<SEC-DOCUMENT>0001437749-23-006415.txt : 20230314
<SEC-HEADER>0001437749-23-006415.hdr.sgml : 20230314
<ACCEPTANCE-DATETIME>20230314081538
ACCESSION NUMBER:		0001437749-23-006415
CONFORMED SUBMISSION TYPE:	10-Q
PUBLIC DOCUMENT COUNT:		59
CONFORMED PERIOD OF REPORT:	20230131
FILED AS OF DATE:		20230314
DATE AS OF CHANGE:		20230314

FILER:

	COMPANY DATA:	
		COMPANY CONFORMED NAME:			OPTICAL CABLE CORP
		CENTRAL INDEX KEY:			0001000230
		STANDARD INDUSTRIAL CLASSIFICATION:	DRAWING AND INSULATING NONFERROUS WIRE [3357]
		IRS NUMBER:				541237042
		STATE OF INCORPORATION:			VA
		FISCAL YEAR END:			1031

	FILING VALUES:
		FORM TYPE:		10-Q
		SEC ACT:		1934 Act
		SEC FILE NUMBER:	000-27022
		FILM NUMBER:		23729242

	BUSINESS ADDRESS:	
		STREET 1:		5290 CONCOURSE DR
		CITY:			ROANOKE
		STATE:			VA
		ZIP:			24019
		BUSINESS PHONE:		5402650690

	MAIL ADDRESS:	
		STREET 1:		5290 CONCOURSE DRIVE
		CITY:			ROANOKE
		STATE:			VA
		ZIP:			24019
</SEC-HEADER>
<DOCUMENT>
<TYPE>10-Q
<SEQUENCE>1
<FILENAME>occ20230131_10q.htm
<DESCRIPTION>FORM 10-Q
<TEXT>
<XBRL>
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:ref="http://www.xbrl.org/2006/ref" xmlns:xbrldi="http://xbrl.org/2006/xbrldi" xmlns:naics="http://xbrl.sec.gov/naics/2022" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ixt-sec="http://www.sec.gov/inlineXBRL/transformation/2015-08-31" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:ixt="http://www.xbrl.org/inlineXBRL/transformation/2015-02-26" xmlns:us-types="http://fasb.org/us-types/2017-01-31" xmlns:srt-types="http://fasb.org/srt-types/2017-01-31" xmlns:utreg="http://www.xbrl.org/2009/utr" xmlns:ix="http://www.xbrl.org/2013/inlineXBRL" xmlns:us-roles="http://fasb.org/us-roles/2017-01-31" xmlns:stpr="http://xbrl.sec.gov/stpr/2022" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:iso4217="http://www.xbrl.org/2003/iso4217" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:thunderdome="http://www.RDGFilings.com" xmlns:utr="http://www.xbrl.org/2009/utr" xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xmlns:dei="http://xbrl.sec.gov/dei/2022" xmlns:occ="http://http/20230131" xmlns:rr="http://xbrl.sec.gov/rr/2022" xmlns:srt="http://fasb.org/srt/2022" xmlns:currency="http://xbrl.sec.gov/currency/2022" xmlns:sic="http://xbrl.sec.gov/sic/2022" xmlns:exch="http://xbrl.sec.gov/exch/2022" xmlns:country="http://xbrl.sec.gov/country/2022" xmlns:us-gaap="http://fasb.org/us-gaap/2022" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2020-01-21"><head>
	<title>occ20230131_10q.htm</title>


	<!-- Generated by ThunderDome Portal - 3/10/2023 6:08:53 PM -->
<meta http-equiv="Content-Type" content="text/html" /></head>
<body style="font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding: 0in 0.1in; cursor: auto;"><div style="display: none;"><ix:header><ix:hidden>
<ix:nonNumeric contextRef="d_2022-11-01_2023-01-31" name="dei:EntityCentralIndexKey">0001000230</ix:nonNumeric>
<ix:nonNumeric contextRef="d_2022-11-01_2023-01-31" name="dei:AmendmentFlag">false</ix:nonNumeric>
<ix:nonNumeric contextRef="d_2022-11-01_2023-01-31" name="dei:CurrentFiscalYearEndDate">--10-31</ix:nonNumeric>
<ix:nonNumeric contextRef="d_2022-11-01_2023-01-31" name="dei:DocumentFiscalYearFocus">2023</ix:nonNumeric>
<ix:nonNumeric contextRef="d_2022-11-01_2023-01-31" name="dei:DocumentFiscalPeriodFocus">Q1</ix:nonNumeric>
<ix:nonFraction id="c525" contextRef="d_2022-11-01_2023-01-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember" unitRef="Pure" name="occ:ConcentrationRiskNumberOfCustomers" scale="0" format="ixt:numdotdecimal" decimals="INF">1</ix:nonFraction>
<ix:nonFraction id="c524" contextRef="d_2021-11-01_2022-01-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember" unitRef="Pure" name="occ:ConcentrationRiskNumberOfCustomers" scale="0" format="ixt:numdotdecimal" decimals="INF">1</ix:nonFraction>
<ix:nonFraction id="c440" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" scale="0" format="ixt:numdotdecimal" decimals="-3">0</ix:nonFraction>
<ix:nonNumeric contextRef="d_2020-07-24_2020-07-24_CreditFacilityAxis-RevolvingCreditFacilityMember_LineOfCreditFacilityAxis-NorthMillCapitalLlcMember" name="occ:DebtInstrumentTermExtensions" id="c384" format="ixt-sec:duryear">1</ix:nonNumeric>
<ix:nonFraction id="c82" contextRef="i_2022-10-31" unitRef="Share" name="us-gaap:PreferredStockSharesOutstanding" scale="0" format="ixt:numdotdecimal" decimals="-3">0</ix:nonFraction>
<ix:nonFraction id="c81" contextRef="i_2023-01-31" unitRef="Share" name="us-gaap:PreferredStockSharesOutstanding" scale="0" format="ixt:numdotdecimal" decimals="-3">0</ix:nonFraction>
<ix:nonFraction id="c80" contextRef="i_2022-10-31" unitRef="Share" name="us-gaap:PreferredStockSharesIssued" scale="0" format="ixt:numdotdecimal" decimals="-3">0</ix:nonFraction>
<ix:nonFraction id="c79" contextRef="i_2023-01-31" unitRef="Share" name="us-gaap:PreferredStockSharesIssued" scale="0" format="ixt:numdotdecimal" decimals="-3">0</ix:nonFraction>
<ix:nonFraction id="c76" contextRef="i_2022-10-31" unitRef="USDPerShare" name="us-gaap:PreferredStockNoParValue" scale="0" format="ixt:numdotdecimal" decimals="-3">0</ix:nonFraction>
<ix:nonFraction id="c75" contextRef="i_2023-01-31" unitRef="USDPerShare" name="us-gaap:PreferredStockNoParValue" scale="0" format="ixt:numdotdecimal" decimals="-3">0</ix:nonFraction></ix:hidden>
<ix:references>
<link:schemaRef xlink:href="occ-20230131.xsd" xlink:type="simple"></link:schemaRef></ix:references>
<ix:resources>
<xbrli:context id="d_2022-11-01_2023-01-31"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-01-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:unit id="USD"><xbrli:measure>iso4217:USD</xbrli:measure></xbrli:unit>
<xbrli:context id="d_2021-11-01_2022-10-31"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2021-11-01</xbrli:startDate><xbrli:endDate>2022-10-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2021-11-01_2022-10-31_StatementGeographicalAxis-NonUsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-11-01</xbrli:startDate><xbrli:endDate>2022-10-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-11-01_2023-01-31_StatementGeographicalAxis-NonUsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-01-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2021-11-01_2022-10-31_StatementGeographicalAxis-US"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-11-01</xbrli:startDate><xbrli:endDate>2022-10-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-11-01_2023-01-31_StatementGeographicalAxis-US"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-01-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2022-10-31"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2022-10-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-01-31"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2023-01-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:unit id="Pure"><xbrli:measure>xbrli:pure</xbrli:measure></xbrli:unit>
<xbrli:context id="d_2022-11-01_2023-01-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-01-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2021-11-01_2022-01-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-11-01</xbrli:startDate><xbrli:endDate>2022-01-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2021-11-01_2022-01-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-CustomerOneMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">occ:CustomerOneMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-11-01</xbrli:startDate><xbrli:endDate>2022-01-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-11-01_2023-01-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-CustomerOneMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:MajorCustomersAxis">occ:CustomerOneMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-01-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:unit id="Share"><xbrli:measure>xbrli:shares</xbrli:measure></xbrli:unit>
<xbrli:context id="d_2021-11-01_2022-01-31"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:startDate>2021-11-01</xbrli:startDate><xbrli:endDate>2022-01-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:unit id="USDPerShare"><xbrli:divide><xbrli:unitNumerator><xbrli:measure>iso4217:USD</xbrli:measure></xbrli:unitNumerator><xbrli:unitDenominator><xbrli:measure>xbrli:shares</xbrli:measure></xbrli:unitDenominator></xbrli:divide></xbrli:unit>
<xbrli:unit id="Month"><xbrli:measure>utr:M</xbrli:measure></xbrli:unit>
<xbrli:context id="i_2022-10-31_BalanceSheetLocationAxis-OtherNoncurrentLiabilitiesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherNoncurrentLiabilitiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-10-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2022-10-31_BalanceSheetLocationAxis-AccountsPayableAndAccruedLiabilitiesCurrentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">occ:AccountsPayableAndAccruedLiabilitiesCurrentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-10-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-01-31_BalanceSheetLocationAxis-OtherNoncurrentLiabilitiesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherNoncurrentLiabilitiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-01-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-01-31_BalanceSheetLocationAxis-AccountsPayableAndAccruedLiabilitiesCurrentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">occ:AccountsPayableAndAccruedLiabilitiesCurrentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-01-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2022-10-31_BalanceSheetLocationAxis-OtherAssetsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherAssetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-10-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-01-31_BalanceSheetLocationAxis-OtherAssetsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherAssetsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-01-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2022-10-31_BalanceSheetLocationAxis-AccountsPayableAndAccruedLiabilitiesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:AccountsPayableAndAccruedLiabilitiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-10-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-01-31_BalanceSheetLocationAxis-AccountsPayableAndAccruedLiabilitiesMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:AccountsPayableAndAccruedLiabilitiesMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-01-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-01-31_LeaseContractualTermAxis-OperatingLeaseForOfficeEquipmentMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LeaseContractualTermAxis">occ:OperatingLeaseForOfficeEquipmentMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-01-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:unit id="SquareFoot"><xbrli:measure>utr:sqft</xbrli:measure></xbrli:unit>
<xbrli:context id="i_2023-01-31_LeaseContractualTermAxis-OperatingLeaseForWarehouseSpaceInRoanokeVirginiaMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LeaseContractualTermAxis">occ:OperatingLeaseForWarehouseSpaceInRoanokeVirginiaMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-01-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-01-31_LeaseContractualTermAxis-OperatingLeaseForOfficeManufacturingAndWarehouseSpaceInPlanoTexasMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LeaseContractualTermAxis">occ:OperatingLeaseForOfficeManufacturingAndWarehouseSpaceInPlanoTexasMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-01-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2022-10-31_CreditFacilityAxis-RevolvingCreditFacilityMember_LineOfCreditFacilityAxis-PinnacleFinancialPartnersMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">occ:PinnacleFinancialPartnersMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-10-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-01-31_CreditFacilityAxis-RevolvingCreditFacilityMember_LineOfCreditFacilityAxis-PinnacleFinancialPartnersMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">occ:PinnacleFinancialPartnersMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-01-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:unit id="Year"><xbrli:measure>utr:Y</xbrli:measure></xbrli:unit>
<xbrli:context id="d_2020-07-24_2020-07-24_CreditFacilityAxis-RevolvingCreditFacilityMember_LineOfCreditFacilityAxis-NorthMillCapitalLlcMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">occ:NorthMillCapitalLlcMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2020-07-24</xbrli:startDate><xbrli:endDate>2020-07-24</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-01-31_CreditFacilityAxis-RevolvingCreditFacilityMember_LineOfCreditFacilityAxis-NorthMillCapitalLlcMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">occ:NorthMillCapitalLlcMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-01-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-11-01_2023-01-31_CreditFacilityAxis-RevolvingCreditFacilityMember_LineOfCreditFacilityAxis-NorthMillCapitalLlcMember_VariableRateAxis-PrimeRateMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">occ:NorthMillCapitalLlcMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:PrimeRateMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-01-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-01-31_CreditFacilityAxis-RevolvingCreditFacilityMember_LineOfCreditFacilityAxis-NorthMillCapitalLlcMember_RangeAxis-MaximumMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">occ:NorthMillCapitalLlcMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-01-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2020-07-24_CreditFacilityAxis-RevolvingCreditFacilityMember_LineOfCreditFacilityAxis-NorthMillCapitalLlcMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">occ:NorthMillCapitalLlcMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2020-07-24</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2022-10-31_LongtermDebtTypeAxis-NorthCarolinaRealEstateLoanMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">occ:NorthCarolinaRealEstateLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-10-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-01-31_LongtermDebtTypeAxis-NorthCarolinaRealEstateLoanMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">occ:NorthCarolinaRealEstateLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-01-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:unit id="NonApplicable"><xbrli:measure>thunderdome:item</xbrli:measure></xbrli:unit>
<xbrli:context id="d_2021-11-01_2022-10-31_LongtermDebtTypeAxis-NorthCarolinaRealEstateLoanMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">occ:NorthCarolinaRealEstateLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-11-01</xbrli:startDate><xbrli:endDate>2022-10-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-11-01_2023-01-31_LongtermDebtTypeAxis-NorthCarolinaRealEstateLoanMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">occ:NorthCarolinaRealEstateLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-01-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2022-10-31_LongtermDebtTypeAxis-VirginiaRealEstateLoanMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">occ:VirginiaRealEstateLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-10-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-01-31_LongtermDebtTypeAxis-VirginiaRealEstateLoanMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">occ:VirginiaRealEstateLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-01-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2021-11-01_2022-10-31_LongtermDebtTypeAxis-VirginiaRealEstateLoanMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">occ:VirginiaRealEstateLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-11-01</xbrli:startDate><xbrli:endDate>2022-10-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-11-01_2023-01-31_LongtermDebtTypeAxis-VirginiaRealEstateLoanMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">occ:VirginiaRealEstateLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-01-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-01-31_LineOfCreditFacilityAxis-PinnacleFinancialPartnersMember_LongtermDebtTypeAxis-VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">occ:PinnacleFinancialPartnersMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">occ:VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-01-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2022-01-31"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2022-01-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2021-10-31"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2021-10-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-01-31_AwardTypeAxis-RestrictedStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-01-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-11-01_2023-01-31_AwardTypeAxis-RestrictedStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-01-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2021-11-01_2022-01-31_PlanNameAxis-Plan2017Member_TitleOfIndividualAxis-EmployeesConsultantAndNonemployeeDirectorsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">occ:Plan2017Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">occ:EmployeesConsultantAndNonemployeeDirectorsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-11-01</xbrli:startDate><xbrli:endDate>2022-01-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-11-01_2023-01-31_PlanNameAxis-Plan2017Member_TitleOfIndividualAxis-EmployeesConsultantAndNonemployeeDirectorsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">occ:Plan2017Member</xbrldi:explicitMember><xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">occ:EmployeesConsultantAndNonemployeeDirectorsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-01-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-01-31_PlanNameAxis-Plan2017Member"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">occ:Plan2017Member</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2023-01-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="d_2021-11-01_2022-01-31_LineOfCreditFacilityAxis-PinnacleFinancialPartnersMember_LongtermDebtTypeAxis-VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">occ:PinnacleFinancialPartnersMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">occ:VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-11-01</xbrli:startDate><xbrli:endDate>2022-01-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-11-01_2023-01-31_LineOfCreditFacilityAxis-PinnacleFinancialPartnersMember_LongtermDebtTypeAxis-VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">occ:PinnacleFinancialPartnersMember</xbrldi:explicitMember><xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">occ:VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-01-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2022-01-31_StatementEquityComponentsAxis-RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</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="i_2022-01-31_StatementEquityComponentsAxis-CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</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="d_2021-11-01_2022-01-31_StatementEquityComponentsAxis-RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-11-01</xbrli:startDate><xbrli:endDate>2022-01-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2021-11-01_2022-01-31_StatementEquityComponentsAxis-CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2021-11-01</xbrli:startDate><xbrli:endDate>2022-01-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2021-10-31_StatementEquityComponentsAxis-RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-10-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2021-10-31_StatementEquityComponentsAxis-CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2021-10-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-01-31_StatementEquityComponentsAxis-RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</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="i_2023-01-31_StatementEquityComponentsAxis-CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</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="d_2022-11-01_2023-01-31_StatementEquityComponentsAxis-RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-01-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="d_2022-11-01_2023-01-31_StatementEquityComponentsAxis-CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:startDate>2022-11-01</xbrli:startDate><xbrli:endDate>2023-01-31</xbrli:endDate></xbrli:period></xbrli:context>
<xbrli:context id="i_2022-10-31_StatementEquityComponentsAxis-RetainedEarningsMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-10-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2022-10-31_StatementEquityComponentsAxis-CommonStockMember"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier><xbrli:segment><xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember></xbrli:segment></xbrli:entity><xbrli:period><xbrli:instant>2022-10-31</xbrli:instant></xbrli:period></xbrli:context>
<xbrli:context id="i_2023-03-08"><xbrli:entity><xbrli:identifier scheme="http://www.sec.gov/CIK">0001000230</xbrli:identifier></xbrli:entity><xbrli:period><xbrli:instant>2023-03-08</xbrli:instant></xbrli:period></xbrli:context></ix:resources>
</ix:header></div>
<div>&#xa0;</div>

<div>
<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"><a href="#toc" style="font-family: &quot;Times New Roman&quot;; font-size: 10pt">Table of Contents</a></p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">UNITED STATES<br />
<br />
<br />
SECURITIES AND EXCHANGE COMMISSION<br />
Washington, D.C. 20549</p>

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

<p style="font-family:Times New Roman;font-size:12pt;font-variant:normal;text-align:center;margin:0pt;"><b>FORM </b><ix:nonNumeric contextRef="d_2022-11-01_2023-01-31" name="dei:DocumentType" id="c2">10-Q</ix:nonNumeric></p>

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

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

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

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

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

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

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

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

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

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

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">Commission file number <ix:nonNumeric contextRef="d_2022-11-01_2023-01-31" name="dei:EntityFileNumber" id="c6">0-27022</ix:nonNumeric></p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><ix:nonNumeric contextRef="d_2022-11-01_2023-01-31" name="dei:EntityRegistrantName" id="c7">OPTICAL CABLE CORPORATION</ix:nonNumeric></b></p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">(Exact name of registrant as specified in its charter)</p>

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

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

		<tbody><tr>
			<td style="width: 50%; text-align: center;"><b><ix:nonNumeric contextRef="d_2022-11-01_2023-01-31" name="dei:EntityIncorporationStateCountryCode" id="c8" format="ixt-sec:stateprovnameen">Virginia</ix:nonNumeric></b></td>
			<td style="width: 50%; text-align: center;"><ix:nonNumeric contextRef="d_2022-11-01_2023-01-31" name="dei:EntityTaxIdentificationNumber" id="c9">54-1237042</ix:nonNumeric></td>
		</tr>
		<tr>
			<td style="text-align: center;">(State or other jurisdiction of incorporation</td>
			<td style="text-align: center;">(I.R.S. Employer</td>
		</tr>
		<tr>
			<td style="text-align: center;">or organization)</td>
			<td style="text-align: center;">Identification No.)</td>
		</tr>

</tbody></table>

<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: center;"><br />
<b><ix:nonNumeric contextRef="d_2022-11-01_2023-01-31" name="dei:EntityAddressAddressLine1" id="c10">5290 Concourse Drive</ix:nonNumeric></b><br />
<b><ix:nonNumeric contextRef="d_2022-11-01_2023-01-31" name="dei:EntityAddressCityOrTown" id="c11">Roanoke</ix:nonNumeric>, <ix:nonNumeric contextRef="d_2022-11-01_2023-01-31" name="dei:EntityAddressStateOrProvince" id="c12" format="ixt-sec:stateprovnameen">Virginia</ix:nonNumeric> <ix:nonNumeric contextRef="d_2022-11-01_2023-01-31" name="dei:EntityAddressPostalZipCode" id="c13">24019</ix:nonNumeric></b><br />
(Address of principal executive offices, including zip code)</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b>(<ix:nonNumeric contextRef="d_2022-11-01_2023-01-31" name="dei:CityAreaCode" id="c14">540</ix:nonNumeric>) <ix:nonNumeric contextRef="d_2022-11-01_2023-01-31" name="dei:LocalPhoneNumber" id="c15">265&#x2011;0690</ix:nonNumeric></b><br />
(Registrant&#x2019;s telephone number, including area code)</p>

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

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

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

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

		<tbody><tr>
			<td style="vertical-align:bottom;width:33.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><span style="text-decoration: underline; ">Title of Each Class</span></b></p>
			</td>
			<td style="vertical-align:top;width:33.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><span style="text-decoration: underline; ">Trading Symbol</span></b></p>
			</td>
			<td style="vertical-align:top;width:33.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><span style="text-decoration: underline; ">Name of exchange on which registered</span></b></p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align:bottom;width:33.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><ix:nonNumeric contextRef="d_2022-11-01_2023-01-31" name="dei:Security12bTitle" id="c16">Common Stock, no par value</ix:nonNumeric></p>
			</td>
			<td style="vertical-align:top;width:33.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><ix:nonNumeric contextRef="d_2022-11-01_2023-01-31" name="dei:TradingSymbol" id="c17">OCC</ix:nonNumeric></p>
			</td>
			<td style="vertical-align:top;width:33.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><ix:nonNumeric contextRef="d_2022-11-01_2023-01-31" name="dei:SecurityExchangeName" id="c18" format="ixt-sec:exchnameen">Nasdaq</ix:nonNumeric> Global Market</p>
			</td>
		</tr>

</tbody></table>

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

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

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

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

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

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

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

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

		<tbody><tr>
			<td style="width: 25%;">Large Accelerated Filer &#x2610;&#xa0;</td>
			<td style="width: 25%;">Accelerated Filer&#xa0;&#x2610;&#xa0;</td>
			<td style="width: 25%;"><ix:nonNumeric contextRef="d_2022-11-01_2023-01-31" name="dei:EntityFilerCategory" id="c21" format="ixt-sec:entityfilercategoryen">Non-accelerated Filer</ix:nonNumeric> &#x2610;</td>
			<td style="width: 25%;">Smaller Reporting Company <ix:nonNumeric contextRef="d_2022-11-01_2023-01-31" name="dei:EntitySmallBusiness" id="c22" format="ixt-sec:boolballotbox">&#x2612;</ix:nonNumeric></td>
		</tr>
		<tr>
			<td>Emerging Growth Company <ix:nonNumeric contextRef="d_2022-11-01_2023-01-31" name="dei:EntityEmergingGrowthCompany" id="c23" format="ixt-sec:boolballotbox">&#x2610;</ix:nonNumeric>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
			<td>&#xa0;</td>
		</tr>

</tbody></table>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;text-indent:25pt;">If an emerging growth company, indicate by check mark if the registrant has elected not to use the extended transition period for complying with any new or revised financial accounting standards provided pursuant to Section 13(a) of the Exchange Act. &#x2610;</p>

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

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

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;text-indent:36pt;">As of March 8, 2023, <ix:nonFraction id="c25" contextRef="i_2023-03-08" unitRef="Share" name="dei:EntityCommonStockSharesOutstanding" scale="0" format="ixt:numdotdecimal" decimals="INF">7,868,568</ix:nonFraction> shares of the registrant&#x2019;s Common Stock, no par value, were outstanding.</p>

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

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

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="text-align: left; width: 100%">
<div class="hf-row">
<div class="hf-cell TOCLink" style="display: inline-block; text-align: left;"><a href="#toc" style="font-weight: initial; font-style: initial; font-variant: initial; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">Table of Contents</a></div>
</div>
</div>
</div>

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

<div>&#xa0;</div>

<div>&#xa0;</div>

<div>
<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><a id="toc" title="toc" href="#"></a>OPTICAL CABLE CORPORATION</b></p>

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

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

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">Three Months Ended January 31, 2023</p>

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

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

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

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

		<tbody><tr>
			<td style="vertical-align: top; width: 8%;">&#xa0;</td>
			<td style="vertical-align: top; width: 6%;">&#xa0;</td>
			<td style="vertical-align: top; width: 79%;">&#xa0;</td>
			<td style="vertical-align: top; width: 7%; text-align: right;"><b>Page</b></td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 8%;">&#xa0;</td>
			<td style="vertical-align: top; width: 6%;">&#xa0;</td>
			<td style="vertical-align: top; width: 79%;">&#xa0;</td>
			<td style="vertical-align: top; width: 7%; text-align: right;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 8%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><a href="#parti" style="-sec-extract:exhibit;"><b>PART I.</b></a></p>
			</td>
			<td colspan="2" rowspan="1" style="vertical-align: top; width: 6%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><a href="#parti" style="-sec-extract:exhibit;"><b>FINANCIAL INFORMATION</b></a></p>
			</td>
			<td style="vertical-align: top; width: 7%; text-align: right;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 8%;">&#xa0;</td>
			<td style="vertical-align: top; width: 6%;">&#xa0;</td>
			<td style="vertical-align: top; width: 79%;">&#xa0;</td>
			<td style="vertical-align: top; width: 7%; text-align: right;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 8%;">&#xa0;</td>
			<td style="vertical-align: top; width: 6%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><a href="#item1" style="-sec-extract:exhibit;"><b>Item</b>&#xa0;<b>1.</b></a></p>
			</td>
			<td style="vertical-align: top; width: 79%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><a href="#item1" style="-sec-extract:exhibit;"><b>Financial Statements (unaudited)</b></a></p>
			</td>
			<td style="vertical-align: top; width: 7%; text-align: right;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 8%;">&#xa0;</td>
			<td style="vertical-align: top; width: 6%;">&#xa0;</td>
			<td style="vertical-align: top; width: 79%;">&#xa0;</td>
			<td style="vertical-align: top; width: 7%; text-align: right;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 8%;">&#xa0;</td>
			<td style="vertical-align: top; width: 6%;">&#xa0;</td>
			<td style="vertical-align: top; width: 79%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><a href="#bs" style="-sec-extract:exhibit;">Condensed Consolidated Balance Sheets&#xa0;&#x2013;&#xa0;January 31, 2023 and October&#xa0;31, 2022</a></p>
			</td>
			<td style="vertical-align: top; width: 7%; text-align: right;"><a class="tocPGNUM" href="#bs">2</a></td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 8%;">&#xa0;</td>
			<td style="vertical-align: top; width: 6%;">&#xa0;</td>
			<td style="vertical-align: top; width: 79%;">&#xa0;</td>
			<td style="vertical-align: top; width: 7%; text-align: right;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 8%;">&#xa0;</td>
			<td style="vertical-align: top; width: 6%;">&#xa0;</td>
			<td style="vertical-align: top; width: 79%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><a href="#ops" style="-sec-extract:exhibit;">Condensed Consolidated Statements of Operations&#xa0;&#x2013;&#xa0;Three Months Ended January 31, 2023 and 2022</a></p>
			</td>
			<td style="vertical-align: top; width: 7%; text-align: right;"><a class="tocPGNUM" href="#ops">3</a></td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 8%;">&#xa0;</td>
			<td style="vertical-align: top; width: 6%;">&#xa0;</td>
			<td style="vertical-align: top; width: 79%;">&#xa0;</td>
			<td style="vertical-align: top; width: 7%; text-align: right;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 8%;">&#xa0;</td>
			<td style="vertical-align: top; width: 6%;">&#xa0;</td>
			<td style="vertical-align: top; width: 79%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><a href="#equity" style="-sec-extract:exhibit;">Condensed Consolidated Statements of Shareholders&#x2019;&#xa0;Equity&#xa0;&#x2013;&#xa0;Three Months Ended January 31, 2023 and 2022</a></p>
			</td>
			<td style="vertical-align: top; width: 7%; text-align: right;"><a class="tocPGNUM" href="#equity">4</a></td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 8%;">&#xa0;</td>
			<td style="vertical-align: top; width: 6%;">&#xa0;</td>
			<td style="vertical-align: top; width: 79%;">&#xa0;</td>
			<td style="vertical-align: top; width: 7%; text-align: right;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 8%;">&#xa0;</td>
			<td style="vertical-align: top; width: 6%;">&#xa0;</td>
			<td style="vertical-align: top; width: 79%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><a href="#cashflows" style="-sec-extract:exhibit;">Condensed Consolidated Statements of Cash Flows&#xa0;&#x2013;&#xa0;Three Months Ended January 31, 2023 and 2022</a></p>
			</td>
			<td style="vertical-align: top; width: 7%; text-align: right;"><a class="tocPGNUM" href="#cashflows">5</a></td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 8%;">&#xa0;</td>
			<td style="vertical-align: top; width: 6%;">&#xa0;</td>
			<td style="vertical-align: top; width: 79%;">&#xa0;</td>
			<td style="vertical-align: top; width: 7%; text-align: right;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 8%;">&#xa0;</td>
			<td style="vertical-align: top; width: 6%;">&#xa0;</td>
			<td style="vertical-align: top; width: 79%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><a href="#notes" style="-sec-extract:exhibit;">Condensed Notes to Condensed Consolidated Financial Statements</a></p>
			</td>
			<td style="vertical-align: top; width: 7%; text-align: right;"><a class="tocPGNUM" href="#notes">6</a></td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 8%;">&#xa0;</td>
			<td style="vertical-align: top; width: 6%;">&#xa0;</td>
			<td style="vertical-align: top; width: 79%;">&#xa0;</td>
			<td style="vertical-align: top; width: 7%; text-align: right;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 8%;">&#xa0;</td>
			<td style="vertical-align: top; width: 6%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><a href="#item2mda" style="-sec-extract:exhibit;"><b>Item</b>&#xa0;<b>2.</b></a></p>
			</td>
			<td style="vertical-align: top; width: 79%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><a href="#item2mda" style="-sec-extract:exhibit;"><b>Management</b>&#x2019;<b>s Discussion and Analysis of Financial Condition and Results of Operations</b></a></p>
			</td>
			<td style="vertical-align: top; width: 7%; text-align: right;"><a class="tocPGNUM" href="#item2mda">14</a></td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 8%;">&#xa0;</td>
			<td style="vertical-align: top; width: 6%;">&#xa0;</td>
			<td style="vertical-align: top; width: 79%;">&#xa0;</td>
			<td style="vertical-align: top; width: 7%; text-align: right;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 8%;">&#xa0;</td>
			<td style="vertical-align: top; width: 6%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><a href="#item4" style="-sec-extract:exhibit;"><b>Item</b>&#xa0;<b>4.</b></a></p>
			</td>
			<td style="vertical-align: top; width: 79%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><a href="#item4" style="-sec-extract:exhibit;"><b>Controls and Procedures</b></a></p>
			</td>
			<td style="vertical-align: top; width: 7%; text-align: right;"><a class="tocPGNUM" href="#item4">25</a></td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 8%;">&#xa0;</td>
			<td colspan="2" style="vertical-align: top; width: 6%;">&#xa0;</td>
			<td style="vertical-align: top; width: 7%; text-align: right;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 8%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><a href="#partii" style="-sec-extract:exhibit;"><b>PART II.</b></a></p>
			</td>
			<td colspan="2" rowspan="1" style="vertical-align: top; width: 6%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><a href="#partii" style="-sec-extract:exhibit;"><b>OTHER INFORMATION</b></a></p>
			</td>
			<td style="vertical-align: top; width: 7%; text-align: right;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 8%;">&#xa0;</td>
			<td colspan="2" style="vertical-align: top; width: 6%;">&#xa0;</td>
			<td style="vertical-align: top; width: 7%; text-align: right;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 8%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
			</td>
			<td style="vertical-align: top; width: 6%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><a href="#item5" style="-sec-extract:exhibit;"><b>Item 5. </b></a></p>
			</td>
			<td style="vertical-align: top; width: 79%;"><a href="#item5" style="-sec-extract:exhibit;"><b>Other Information</b></a></td>
			<td style="vertical-align: top; width: 7%; text-align: right;"><a class="tocPGNUM" href="#item5">26</a></td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 8%;">&#xa0;</td>
			<td style="vertical-align: top; width: 6%;">&#xa0;</td>
			<td style="vertical-align: top; width: 79%;">&#xa0;</td>
			<td style="vertical-align: top; width: 7%; text-align: right;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 8%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">&#xa0;</p>
			</td>
			<td style="vertical-align: top; width: 6%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><a href="#item6" style="-sec-extract:exhibit;"><b>Item</b>&#xa0;<b>6.</b></a></p>
			</td>
			<td style="vertical-align: top; width: 79%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><a href="#item6" style="-sec-extract:exhibit;"><b>Exhibits</b></a></p>
			</td>
			<td style="vertical-align: top; width: 7%; text-align: right;"><a class="tocPGNUM" href="#item6">27</a></td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 8%;">&#xa0;</td>
			<td style="vertical-align: top; width: 6%;">&#xa0;</td>
			<td style="vertical-align: top; width: 79%;">&#xa0;</td>
			<td style="vertical-align: top; width: 7%; text-align: right;">&#xa0;</td>
		</tr>
		<tr>
			<td colspan="3" rowspan="1" style="vertical-align: top; width: 8%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><a href="#sigs" style="-sec-extract:exhibit;"><b>SIGNATURES</b></a></p>
			</td>
			<td style="vertical-align: top; width: 7%; text-align: right;"><a class="tocPGNUM" href="#sigs">32</a></td>
		</tr>

</tbody></table>

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

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

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="text-align: left; width: 100%">
<div class="hf-row">
<div class="hf-cell TOCLink" style="display: inline-block; text-align: left;"><a href="#toc" style="font-weight: initial; font-style: initial; font-variant: initial; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">Table of Contents</a></div>
</div>
</div>
</div>

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

<div>&#xa0;</div>

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

		<tbody><tr>
			<td colspan="11" style="vertical-align:bottom;width:98.6%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><a id="parti" title="parti" href="#"></a>PART I.</b>&#xa0;<b>&#xa0;FINANCIAL INFORMATION</b></p>
			</td>
		</tr>

</tbody></table>

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

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

		<tbody><tr>
			<td colspan="7" style="vertical-align:bottom;width:2.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><a id="item1" title="item1" href="#"></a>Item 1.&#xa0;&#xa0;Financial Statements</p>
			</td>
		</tr>
		<tr>
			<td colspan="7" style="vertical-align:bottom;width:2.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><a id="bs" title="bs" href="#"></a>OPTICAL CABLE CORPORATION</b></p>
			</td>
		</tr>
		<tr>
			<td colspan="7" style="vertical-align:bottom;width:2.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">Condensed Consolidated Balance Sheets</p>
			</td>
		</tr>
		<tr>
			<td colspan="7" style="vertical-align:bottom;width:2.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">(Unaudited)</p>
			</td>
		</tr>

</tbody></table>

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

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

		<tbody><tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b>January 31,</b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b>October 31,</b></b> </b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b>2023</b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b>2022</b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 70%; text-align: center;"><b>Assets</b></td>
			<td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;"><b>&#xa0;</b></td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">Current assets:</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Cash</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c32" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" scale="0" format="ixt:numdotdecimal" decimals="0">186,081</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c33" contextRef="i_2022-10-31" unitRef="USD" name="us-gaap:CashAndCashEquivalentsAtCarryingValue" scale="0" format="ixt:numdotdecimal" decimals="0">215,936</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 27pt; text-indent: -9pt;">Trade accounts receivable, net of allowance for doubtful accounts of $<ix:nonFraction id="c34" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">59,856</ix:nonFraction> at January 31, 2023 and $<ix:nonFraction id="c35" contextRef="i_2022-10-31" unitRef="USD" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">69,643</ix:nonFraction> at October 31, 2022</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c36" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:AccountsReceivableNetCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">9,910,936</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c37" contextRef="i_2022-10-31" unitRef="USD" name="us-gaap:AccountsReceivableNetCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">10,963,753</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Other receivables</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c38" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:OtherReceivables" scale="0" format="ixt:numdotdecimal" decimals="0">140,945</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c39" contextRef="i_2022-10-31" unitRef="USD" name="us-gaap:OtherReceivables" scale="0" format="ixt:numdotdecimal" decimals="0">37,442</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Inventories</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c40" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:InventoryNet" scale="0" format="ixt:numdotdecimal" decimals="0">22,261,385</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c41" contextRef="i_2022-10-31" unitRef="USD" name="us-gaap:InventoryNet" scale="0" format="ixt:numdotdecimal" decimals="0">19,438,766</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Prepaid expenses and other assets</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c42" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:PrepaidExpenseAndOtherAssetsCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">609,848</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c43" contextRef="i_2022-10-31" unitRef="USD" name="us-gaap:PrepaidExpenseAndOtherAssetsCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">540,225</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 72pt;">Total current assets</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c44" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:AssetsCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">33,109,195</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c45" contextRef="i_2022-10-31" unitRef="USD" name="us-gaap:AssetsCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">31,196,122</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Property and equipment, net</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c46" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:PropertyPlantAndEquipmentNet" scale="0" format="ixt:numdotdecimal" decimals="0">7,302,218</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c47" contextRef="i_2022-10-31" unitRef="USD" name="us-gaap:PropertyPlantAndEquipmentNet" scale="0" format="ixt:numdotdecimal" decimals="0">7,390,285</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Intangible assets, net</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c48" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:IntangibleAssetsNetExcludingGoodwill" scale="0" format="ixt:numdotdecimal" decimals="0">606,716</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c49" contextRef="i_2022-10-31" unitRef="USD" name="us-gaap:IntangibleAssetsNetExcludingGoodwill" scale="0" format="ixt:numdotdecimal" decimals="0">618,142</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Other assets, net</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c50" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:OtherAssetsNoncurrent" scale="0" format="ixt:numdotdecimal" decimals="0">1,483,221</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c51" contextRef="i_2022-10-31" unitRef="USD" name="us-gaap:OtherAssetsNoncurrent" scale="0" format="ixt:numdotdecimal" decimals="0">1,353,257</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 72pt;">Total assets</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c52" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:Assets" scale="0" format="ixt:numdotdecimal" decimals="0">42,501,350</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c53" contextRef="i_2022-10-31" unitRef="USD" name="us-gaap:Assets" scale="0" format="ixt:numdotdecimal" decimals="0">40,557,806</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; text-align: center;"><b>Liabilities</b> <b>and</b> <b>Shareholders</b>&#x2019; <b>Equity</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">Current liabilities:</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Current installments of long-term debt</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c56" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:LoansPayableCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">341,522</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c57" contextRef="i_2022-10-31" unitRef="USD" name="us-gaap:LoansPayableCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">338,094</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Accounts payable and accrued expenses</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c58" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:AccountsPayableAndAccruedLiabilitiesCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">5,558,085</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c59" contextRef="i_2022-10-31" unitRef="USD" name="us-gaap:AccountsPayableAndAccruedLiabilitiesCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">5,354,150</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Accrued compensation and payroll taxes</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c60" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:EmployeeRelatedLiabilitiesCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">1,763,863</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c61" contextRef="i_2022-10-31" unitRef="USD" name="us-gaap:EmployeeRelatedLiabilitiesCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">1,772,551</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Income taxes payable</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c62" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:TaxesPayableCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">50,379</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c63" contextRef="i_2022-10-31" unitRef="USD" name="us-gaap:TaxesPayableCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">18,098</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 72pt;">Total current liabilities</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c64" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:LiabilitiesCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">7,713,849</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c65" contextRef="i_2022-10-31" unitRef="USD" name="us-gaap:LiabilitiesCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">7,482,893</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Note payable, revolver - noncurrent</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c66" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:LongTermLineOfCredit" scale="0" format="ixt:numdotdecimal" decimals="0">6,823,065</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c67" contextRef="i_2022-10-31" unitRef="USD" name="us-gaap:LongTermLineOfCredit" scale="0" format="ixt:numdotdecimal" decimals="0">5,999,663</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Long-term debt, excluding current installments</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c68" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:LongTermLoansPayable" scale="0" format="ixt:numdotdecimal" decimals="0">4,104,190</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c69" contextRef="i_2022-10-31" unitRef="USD" name="us-gaap:LongTermLoansPayable" scale="0" format="ixt:numdotdecimal" decimals="0">4,190,508</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Other noncurrent liabilities</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c70" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:OtherLiabilitiesNoncurrent" scale="0" format="ixt:numdotdecimal" decimals="0">856,222</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c71" contextRef="i_2022-10-31" unitRef="USD" name="us-gaap:OtherLiabilitiesNoncurrent" scale="0" format="ixt:numdotdecimal" decimals="0">725,024</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 72pt;">Total liabilities</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c72" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:Liabilities" scale="0" format="ixt:numdotdecimal" decimals="0">19,497,326</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c73" contextRef="i_2022-10-31" unitRef="USD" name="us-gaap:Liabilities" scale="0" format="ixt:numdotdecimal" decimals="0">18,398,088</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">Shareholders&#x2019; equity:</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 27pt; text-indent: -9pt;">Preferred stock, <span style="-sec-ix-hidden:c75"><span style="-sec-ix-hidden:c76">no</span></span> par value, authorized <ix:nonFraction id="c77" contextRef="i_2023-01-31" unitRef="Share" name="us-gaap:PreferredStockSharesAuthorized" scale="0" format="ixt:numdotdecimal" decimals="INF"><ix:nonFraction id="c78" contextRef="i_2022-10-31" unitRef="Share" name="us-gaap:PreferredStockSharesAuthorized" scale="0" format="ixt:numdotdecimal" decimals="INF">1,000,000</ix:nonFraction></ix:nonFraction> shares; <span style="-sec-ix-hidden:c79"><span style="-sec-ix-hidden:c80"><span style="-sec-ix-hidden:c81"><span style="-sec-ix-hidden:c82">none</span></span></span></span> issued and outstanding</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c83" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:PreferredStockValue" scale="0" format="ixt:zerodash" decimals="-3">&#x2014;</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c84" contextRef="i_2022-10-31" unitRef="USD" name="us-gaap:PreferredStockValue" scale="0" format="ixt:zerodash" decimals="-3">&#x2014;</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 27pt; text-indent: -9pt;">Common stock, <ix:nonFraction id="c85" contextRef="i_2022-10-31" unitRef="USDPerShare" name="us-gaap:CommonStockNoParValue" scale="0" format="ixt-sec:numwordsen" decimals="-3"><ix:nonFraction id="c86" contextRef="i_2023-01-31" unitRef="USDPerShare" name="us-gaap:CommonStockNoParValue" scale="0" format="ixt-sec:numwordsen" decimals="-3">no</ix:nonFraction></ix:nonFraction> par value, authorized <ix:nonFraction id="c87" contextRef="i_2022-10-31" unitRef="Share" name="us-gaap:CommonStockSharesAuthorized" scale="0" format="ixt:numdotdecimal" decimals="INF"><ix:nonFraction id="c88" contextRef="i_2023-01-31" unitRef="Share" name="us-gaap:CommonStockSharesAuthorized" scale="0" format="ixt:numdotdecimal" decimals="INF">50,000,000</ix:nonFraction></ix:nonFraction> shares; issued and outstanding <ix:nonFraction id="c89" contextRef="i_2023-01-31" unitRef="Share" name="us-gaap:CommonStockSharesOutstanding" scale="0" format="ixt:numdotdecimal" decimals="INF"><ix:nonFraction id="c90" contextRef="i_2023-01-31" unitRef="Share" name="us-gaap:CommonStockSharesIssued" scale="0" format="ixt:numdotdecimal" decimals="INF">7,868,568</ix:nonFraction></ix:nonFraction> shares at January 31, 2023 and <ix:nonFraction id="c91" contextRef="i_2022-10-31" unitRef="Share" name="us-gaap:CommonStockSharesIssued" scale="0" format="ixt:numdotdecimal" decimals="INF"><ix:nonFraction id="c92" contextRef="i_2022-10-31" unitRef="Share" name="us-gaap:CommonStockSharesOutstanding" scale="0" format="ixt:numdotdecimal" decimals="INF">7,893,194</ix:nonFraction></ix:nonFraction> shares at October 31, 2022</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c93" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:CommonStockValue" scale="0" format="ixt:numdotdecimal" decimals="0">14,672,827</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c94" contextRef="i_2022-10-31" unitRef="USD" name="us-gaap:CommonStockValue" scale="0" format="ixt:numdotdecimal" decimals="0">14,638,505</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Retained earnings</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c95" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:RetainedEarningsAccumulatedDeficit" scale="0" format="ixt:numdotdecimal" decimals="0">8,331,197</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c96" contextRef="i_2022-10-31" unitRef="USD" name="us-gaap:RetainedEarningsAccumulatedDeficit" scale="0" format="ixt:numdotdecimal" decimals="0">7,521,213</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 72pt;">Total shareholders&#x2019; equity</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c97" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="0" format="ixt:numdotdecimal" decimals="0">23,004,024</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c98" contextRef="i_2022-10-31" unitRef="USD" name="us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" scale="0" format="ixt:numdotdecimal" decimals="0">22,159,718</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Commitments and contingencies</p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<ix:nonFraction id="c100" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:CommitmentsAndContingencies" scale="0" xsi:nil="true"></ix:nonFraction>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<ix:nonFraction id="c101" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:CommitmentsAndContingencies" scale="0" xsi:nil="true"></ix:nonFraction>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 72pt;">Total liabilities and shareholders&#x2019; equity</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c102" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:LiabilitiesAndStockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="0">42,501,350</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 12%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c103" contextRef="i_2022-10-31" unitRef="USD" name="us-gaap:LiabilitiesAndStockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="0">40,557,806</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
		</tr>

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

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

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

		<tbody><tr>
			<td colspan="9" style="vertical-align:bottom;width:2.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">See accompanying condensed notes to condensed consolidated financial statements.</p>
			</td>
		</tr>

</tbody></table>

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

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

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="text-align: left; width: 100%">
<div class="hf-row">
<div class="hf-cell TOCLink" style="display: inline-block; text-align: left;"><a href="#toc" style="font-weight: initial; font-style: initial; font-variant: initial; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">Table of Contents</a></div>
</div>
</div>
</div>

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

<div>&#xa0;</div>

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

		<tbody><tr>
			<td colspan="11" style="vertical-align:bottom;width:95.6%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><a id="ops" title="ops" href="#"></a>OPTICAL CABLE CORPORATION</b></p>
			</td>
		</tr>
		<tr>
			<td colspan="11" style="vertical-align:bottom;width:3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">Condensed Consolidated Statements of Operations</p>
			</td>
		</tr>
		<tr>
			<td colspan="11" style="vertical-align:bottom;width:3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">(Unaudited)</p>
			</td>
		</tr>

</tbody></table>

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

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

		<tbody><tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b>Three Months Ended</b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b>January 31,</b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b>2023</b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b>2022</b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 70%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Net sales</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c106" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">18,283,675</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c107" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">14,440,295</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Cost of goods sold</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c108" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:CostOfGoodsAndServicesSold" scale="0" format="ixt:numdotdecimal" decimals="0">11,762,466</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c109" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:CostOfGoodsAndServicesSold" scale="0" format="ixt:numdotdecimal" decimals="0">10,394,443</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 45pt;">Gross profit</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c110" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:GrossProfit" scale="0" format="ixt:numdotdecimal" decimals="0">6,521,209</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c111" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:GrossProfit" scale="0" format="ixt:numdotdecimal" decimals="0">4,045,852</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Selling, general and administrative expenses</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c112" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:SellingGeneralAndAdministrativeExpense" scale="0" format="ixt:numdotdecimal" decimals="0">5,455,466</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c113" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:SellingGeneralAndAdministrativeExpense" scale="0" format="ixt:numdotdecimal" decimals="0">4,780,199</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Royalty expense, net</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c114" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="occ:RoyaltyRevenueExpense" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">6,586</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c115" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="occ:RoyaltyRevenueExpense" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">6,958</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Amortization of intangible assets</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c116" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:AmortizationOfIntangibleAssets" scale="0" format="ixt:numdotdecimal" decimals="0">13,221</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c117" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:AmortizationOfIntangibleAssets" scale="0" format="ixt:numdotdecimal" decimals="0">12,095</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 45pt;">Income (loss) from operations</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c118" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:OperatingIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">1,045,936</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c119" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:OperatingIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">753,400</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">Other income (expense), net:</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Interest expense, net</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c121" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:InterestExpense" scale="0" format="ixt:numdotdecimal" decimals="0">270,623</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c122" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:InterestExpense" scale="0" format="ixt:numdotdecimal" decimals="0">158,260</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Other, net</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c123" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:OtherNonoperatingIncomeExpense" scale="0" format="ixt:numdotdecimal" decimals="0">67,135</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c124" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:OtherNonoperatingIncomeExpense" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">11,385</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 45pt;">Other expense, net</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c125" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:NonoperatingIncomeExpense" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">203,488</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c126" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:NonoperatingIncomeExpense" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">169,645</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 45pt;">Income (loss) before income taxes</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c127" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" scale="0" format="ixt:numdotdecimal" decimals="0">842,448</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c128" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">923,045</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Income tax expense</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c129" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:IncomeTaxExpenseBenefit" scale="0" format="ixt:numdotdecimal" decimals="0">32,464</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c130" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:IncomeTaxExpenseBenefit" scale="0" format="ixt:numdotdecimal" decimals="0">12,748</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 45pt;">Net income (loss)</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c131" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">809,984</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(<ix:nonFraction id="c132" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">935,793</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Net income (loss) per share: Basic and diluted</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c133" contextRef="d_2022-11-01_2023-01-31" unitRef="USDPerShare" name="us-gaap:EarningsPerShareBasic" scale="0" format="ixt:numdotdecimal" decimals="INF">0.10</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(<ix:nonFraction id="c134" contextRef="d_2021-11-01_2022-01-31" unitRef="USDPerShare" name="us-gaap:EarningsPerShareBasic" scale="0" format="ixt:numdotdecimal" decimals="INF" sign="-">0.12</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">)</td>
		</tr>

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

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

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

		<tbody><tr>
			<td colspan="15" style="vertical-align:bottom;width:3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">See accompanying condensed notes to condensed consolidated financial statements.</p>
			</td>
		</tr>

</tbody></table>

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

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

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="text-align: left; width: 100%">
<div class="hf-row">
<div class="hf-cell TOCLink" style="display: inline-block; text-align: left;"><a href="#toc" style="font-weight: initial; font-style: initial; font-variant: initial; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">Table of Contents</a></div>
</div>
</div>
</div>

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

<div>&#xa0;</div>

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

		<tbody><tr>
			<td colspan="15" style="vertical-align:bottom;width:82.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><a id="equity" title="equity" href="#"></a>OPTICAL CABLE CORPORATION</b></p>
			</td>
		</tr>
		<tr>
			<td colspan="15" style="vertical-align:bottom;width:2.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">Condensed Consolidated Statements of Shareholders&#x2019;&#xa0;Equity</p>
			</td>
		</tr>
		<tr>
			<td colspan="15" style="vertical-align:bottom;width:2.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">(Unaudited)</p>
			</td>
		</tr>

</tbody></table>

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

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

		<tbody><tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="14" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Three Months Ended January 31, 2023</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Total</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Common Stock</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Retained</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Shareholders&#x2019;</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Shares</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Amount</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Earnings</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Equity</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 52%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Balances at October 31, 2022</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c137" contextRef="i_2022-10-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="Share" name="us-gaap:SharesOutstanding" scale="0" format="ixt:numdotdecimal" decimals="INF">7,893,194</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c138" contextRef="i_2022-10-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="0">14,638,505</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c139" contextRef="i_2022-10-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="0">7,521,213</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c140" contextRef="i_2022-10-31" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="0">22,159,718</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Share-based compensation, net</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c141" contextRef="d_2022-11-01_2023-01-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="Share" name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation" scale="0" format="ixt:numdotdecimal" decimals="INF">24,626</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c142" contextRef="d_2022-11-01_2023-01-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" scale="0" format="ixt:numdotdecimal" decimals="0">34,322</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c143" contextRef="d_2022-11-01_2023-01-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" scale="0" format="ixt:zerodash" decimals="-3">&#x2014;</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c144" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" scale="0" format="ixt:numdotdecimal" decimals="0">34,322</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Net income</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#x2014;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c146" contextRef="d_2022-11-01_2023-01-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:zerodash" decimals="-3">&#x2014;</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c147" contextRef="d_2022-11-01_2023-01-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">809,984</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c148" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">809,984</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Balances at January 31, 2023</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c149" contextRef="i_2023-01-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="Share" name="us-gaap:SharesOutstanding" scale="0" format="ixt:numdotdecimal" decimals="INF">7,868,568</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c150" contextRef="i_2023-01-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="0">14,672,827</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c151" contextRef="i_2023-01-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="0">8,331,197</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c152" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="0">23,004,024</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
		</tr>

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

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

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

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

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

		<tbody><tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="14" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>Three Months Ended January 31, 2022</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>Total</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>Common Stock</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>Retained</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>Shareholders</b>&#x2019;</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>Shares</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>Amount</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>Earnings</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>Equity</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 52%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Balances at October 31, 2021</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c155" contextRef="i_2021-10-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="Share" name="us-gaap:SharesOutstanding" scale="0" format="ixt:numdotdecimal" decimals="INF">7,897,477</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c156" contextRef="i_2021-10-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="0">14,337,649</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c157" contextRef="i_2021-10-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="0">7,868,304</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c158" contextRef="i_2021-10-31" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="0">22,205,953</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Share-based compensation, net</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c159" contextRef="d_2021-11-01_2022-01-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="Share" name="us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation" scale="0" format="ixt:numdotdecimal" decimals="INF">47,479</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c160" contextRef="d_2021-11-01_2022-01-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" scale="0" format="ixt:numdotdecimal" decimals="0">19,803</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c161" contextRef="d_2021-11-01_2022-01-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" scale="0" format="ixt:zerodash" decimals="-3">&#x2014;</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c162" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation" scale="0" format="ixt:numdotdecimal" decimals="0">19,803</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Net loss</p>
			</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">&#x2014;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c164" contextRef="d_2021-11-01_2022-01-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:zerodash" decimals="-3">&#x2014;</ix:nonFraction></td>
			<td style="width: 1%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c165" contextRef="d_2021-11-01_2022-01-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">935,793</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c166" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">935,793</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Balances at January 31, 2022</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c167" contextRef="i_2022-01-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="Share" name="us-gaap:SharesOutstanding" scale="0" format="ixt:numdotdecimal" decimals="INF">7,849,998</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c168" contextRef="i_2022-01-31_StatementEquityComponentsAxis-CommonStockMember" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="0">14,357,452</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c169" contextRef="i_2022-01-31_StatementEquityComponentsAxis-RetainedEarningsMember" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="0">6,932,511</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 9%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c170" contextRef="i_2022-01-31" unitRef="USD" name="us-gaap:StockholdersEquity" scale="0" format="ixt:numdotdecimal" decimals="0">21,289,963</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
		</tr>

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

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

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

		<tbody><tr>
			<td colspan="11" style="vertical-align:bottom;width:2.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">See accompanying condensed notes to condensed consolidated financial statements.</p>
			</td>
		</tr>

</tbody></table>

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

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

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="text-align: left; width: 100%">
<div class="hf-row">
<div class="hf-cell TOCLink" style="display: inline-block; text-align: left;"><a href="#toc" style="font-weight: initial; font-style: initial; font-variant: initial; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">Table of Contents</a></div>
</div>
</div>
</div>

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

<div>&#xa0;</div>

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

		<tbody><tr>
			<td colspan="11" style="vertical-align:bottom;width:98.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><a id="cashflows" title="cashflows" href="#"></a>OPTICAL CABLE CORPORATION</b></p>
			</td>
		</tr>
		<tr>
			<td colspan="11" style="vertical-align:bottom;width:2.8%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">Condensed Consolidated Statements of Cash Flows</p>
			</td>
		</tr>
		<tr>
			<td colspan="11" style="vertical-align:bottom;width:2.8%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">(Unaudited)</p>
			</td>
		</tr>

</tbody></table>

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

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

		<tbody><tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b>Three Months Ended</b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b>January 31,</b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b>2023</b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b>2022</b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 70%;">Cash flows from operating activities:</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Net income (loss)</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c174" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">809,984</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c175" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">935,793</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-left: 18pt;">Adjustments to reconcile net income (loss) to net cash used in operating activities:</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Depreciation and amortization</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c177" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:DepreciationDepletionAndAmortization" scale="0" format="ixt:numdotdecimal" decimals="0">248,196</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c178" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:DepreciationDepletionAndAmortization" scale="0" format="ixt:numdotdecimal" decimals="0">285,954</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Bad debt recovery</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c179" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:ProvisionForDoubtfulAccounts" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">9,787</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c180" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:ProvisionForDoubtfulAccounts" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">4,328</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Share-based compensation expense</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c181" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:ShareBasedCompensation" scale="0" format="ixt:numdotdecimal" decimals="0">135,041</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c182" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:ShareBasedCompensation" scale="0" format="ixt:numdotdecimal" decimals="0">124,439</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Loss on sale of property and equipment</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c183" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:GainLossOnSaleOfPropertyPlantEquipment" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">10,065</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c184" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:GainLossOnSaleOfPropertyPlantEquipment" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">12,008</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-left: 18pt;">(Increase) decrease in:</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 45pt;">Trade accounts receivable</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c186" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:IncreaseDecreaseInAccountsReceivable" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">1,062,604</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c187" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:IncreaseDecreaseInAccountsReceivable" scale="0" format="ixt:numdotdecimal" decimals="0">11,897</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 45pt;">Other receivables</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c188" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:IncreaseDecreaseInOtherReceivables" scale="0" format="ixt:numdotdecimal" decimals="0">103,503</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c189" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:IncreaseDecreaseInOtherReceivables" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">20,708</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 45pt;">Inventories</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c190" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:IncreaseDecreaseInInventories" scale="0" format="ixt:numdotdecimal" decimals="0">2,822,619</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c191" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:IncreaseDecreaseInInventories" scale="0" format="ixt:numdotdecimal" decimals="0">1,603,095</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 45pt;">Prepaid expenses and other assets</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c192" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" scale="0" format="ixt:numdotdecimal" decimals="0">69,623</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c193" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">77,448</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 45pt;">Other assets</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c194" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:IncreaseDecreaseInOtherOperatingAssets" scale="0" format="ixt:numdotdecimal" decimals="0">199,075</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c195" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:IncreaseDecreaseInOtherOperatingAssets" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">96,340</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-left: 18pt;">Increase (decrease) in:</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 45pt;">Accounts payable and accrued expenses</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c197" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" scale="0" format="ixt:numdotdecimal" decimals="0">119,602</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c198" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" scale="0" format="ixt:numdotdecimal" decimals="0">457,661</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 45pt;">Accrued compensation and payroll taxes</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c199" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">8,688</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c200" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities" scale="0" format="ixt:numdotdecimal" decimals="0">114,430</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 45pt;">Income taxes payable</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c201" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable" scale="0" format="ixt:numdotdecimal" decimals="0">32,281</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c202" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable" scale="0" format="ixt:numdotdecimal" decimals="0">12,151</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 45pt;">Other noncurrent liabilities</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c203" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:IncreaseDecreaseInOtherNoncurrentLiabilities" scale="0" format="ixt:numdotdecimal" decimals="0">165,398</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c204" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:IncreaseDecreaseInOtherNoncurrentLiabilities" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">510,513</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 63pt;">Net cash used in operating activities</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c205" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">630,124</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c206" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:NetCashProvidedByUsedInOperatingActivities" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">1,864,487</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">Cash flows from investing activities:</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Purchase of and deposits for the purchase of property and equipment</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c208" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" scale="0" format="ixt:numdotdecimal" decimals="0">104,675</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c209" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:PaymentsToAcquirePropertyPlantAndEquipment" scale="0" format="ixt:numdotdecimal" decimals="0">73,286</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Investment in intangible assets</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c210" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:PaymentsToAcquireIntangibleAssets" scale="0" format="ixt:numdotdecimal" decimals="0">1,795</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c211" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:PaymentsToAcquireIntangibleAssets" scale="0" format="ixt:numdotdecimal" decimals="0">8,006</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 63pt;">Net cash used in investing activities</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c212" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">106,470</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c213" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:NetCashProvidedByUsedInInvestingActivities" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">81,292</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-left: 18pt;">Cash flows from financing activities:</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Proceeds from note payable, revolver</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c215" contextRef="d_2022-11-01_2023-01-31_LineOfCreditFacilityAxis-PinnacleFinancialPartnersMember_LongtermDebtTypeAxis-VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember" unitRef="USD" name="us-gaap:ProceedsFromNotesPayable" scale="0" format="ixt:numdotdecimal" decimals="0">20,010,064</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c216" contextRef="d_2021-11-01_2022-01-31_LineOfCreditFacilityAxis-PinnacleFinancialPartnersMember_LongtermDebtTypeAxis-VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember" unitRef="USD" name="us-gaap:ProceedsFromNotesPayable" scale="0" format="ixt:numdotdecimal" decimals="0">16,492,804</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Payments on note payable, revolver</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c217" contextRef="d_2022-11-01_2023-01-31_LineOfCreditFacilityAxis-PinnacleFinancialPartnersMember_LongtermDebtTypeAxis-VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember" unitRef="USD" name="us-gaap:RepaymentsOfNotesPayable" scale="0" format="ixt:numdotdecimal" decimals="0">19,186,661</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c218" contextRef="d_2021-11-01_2022-01-31_LineOfCreditFacilityAxis-PinnacleFinancialPartnersMember_LongtermDebtTypeAxis-VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember" unitRef="USD" name="us-gaap:RepaymentsOfNotesPayable" scale="0" format="ixt:numdotdecimal" decimals="0">14,428,307</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Principal payments on long-term debt</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c219" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:RepaymentsOfLongTermDebt" scale="0" format="ixt:numdotdecimal" decimals="0">82,891</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c220" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:RepaymentsOfLongTermDebt" scale="0" format="ixt:numdotdecimal" decimals="0">79,597</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Payments for financing costs</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c221" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:PaymentsOfFinancingCosts" scale="0" format="ixt:numdotdecimal" decimals="0">25,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c222" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:PaymentsOfFinancingCosts" scale="0" format="ixt:numdotdecimal" decimals="0">25,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Principal payments on financing lease</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c223" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:FinanceLeasePrincipalPayments" scale="0" format="ixt:numdotdecimal" decimals="0">8,773</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c224" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:FinanceLeasePrincipalPayments" scale="0" format="ixt:numdotdecimal" decimals="0">8,366</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 63pt;">Net cash provided by financing activities</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c225" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" scale="0" format="ixt:numdotdecimal" decimals="0">706,739</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c226" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:NetCashProvidedByUsedInFinancingActivities" scale="0" format="ixt:numdotdecimal" decimals="0">1,951,534</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Net increase (decrease) in cash</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c227" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">29,855</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c228" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" scale="0" format="ixt:numdotdecimal" decimals="0">5,755</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Cash at beginning of period</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c229" contextRef="i_2022-10-31" unitRef="USD" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" scale="0" format="ixt:numdotdecimal" decimals="0">215,936</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c230" contextRef="i_2021-10-31" unitRef="USD" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" scale="0" format="ixt:numdotdecimal" decimals="0">132,249</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Cash at end of period</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c231" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" scale="0" format="ixt:numdotdecimal" decimals="0">186,081</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 12%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c232" contextRef="i_2022-01-31" unitRef="USD" name="us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" scale="0" format="ixt:numdotdecimal" decimals="0">138,004</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
		</tr>

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

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

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

		<tbody><tr>
			<td colspan="9" style="vertical-align:bottom;width:2.8%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">See accompanying condensed notes to condensed consolidated financial statements.</p>
			</td>
		</tr>

</tbody></table>

<div>&#xa0;</div>

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

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

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="display: table; width: 100%;">
<div class="hf-row" style="display: table-row;">
<div class="hf-cell TOCLink" style="text-align: left; margin: 0pt; display: table-cell;"><a href="#toc" style="font-weight: initial; font-style: initial; font-variant: initial; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">Table of Contents</a></div>
</div>

<div class="hf-row" style="display: table-row;">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center; font-weight: bold; margin: 0pt; display: table-cell;">OPTICAL CABLE CORPORATION</div>
</div>

<div class="hf-row" style="display: table-row;">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center; margin: 0pt; display: table-cell;">Condensed Notes to Condensed Consolidated Financial Statements</div>
</div>

<div class="hf-row" style="display: table-row;">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center; margin: 0pt; display: table-cell;">Three Months Ended January 31, 2023</div>
</div>

<div class="hf-row" style="display: table-row;">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center; margin: 0pt; display: table-cell;">(Unaudited)</div>
</div>
</div>
</div>

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

<div>&#xa0;</div>

<ix:nonNumeric contextRef="d_2022-11-01_2023-01-31" name="us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock" id="c233" escape="true">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 27pt;">
			<p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b><a id="notes" title="notes" href="#"></a>(1)</b></p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>General</b></p>
			</td>
		</tr>

</tbody></table>

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

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 27pt; text-align: justify;">The accompanying unaudited condensed consolidated financial statements of Optical Cable Corporation and its subsidiaries (collectively, the &#x201c;Company&#x201d; or &#x201c;OCC&#xae;&#x201d;) have been prepared in accordance with U.S. generally accepted accounting principles for interim financial information and the instructions to Form 10&#x2011;Q and Regulation S&#x2011;X. Accordingly, they do not include all of the information and notes required by U.S. generally accepted accounting principles for complete financial statements. In the opinion of management, all material adjustments considered necessary for a fair presentation have been included. Operating results for the three months ended January 31, 2023 are not necessarily indicative of the results for the fiscal year ending October 31, 2023 because the following items, among other things, may impact those results: changing macroeconomic conditions in various markets, direct and indirect impacts of the COVID-19 pandemic including (but not limited to) supply chain and labor constraints impacting production volumes, increased costs and COVID-19 related government and private industry mandates in the areas of the world in which we operate, changes in market conditions, seasonality, inflation and interest rates, changes in technology, competitive conditions, timing of certain projects and purchases by key customers, significant variations in sales resulting from high volatility and timing of large sales orders among a limited number of customers in certain markets, ability of management to execute its business plans, continued ability to maintain and/or secure future debt and/or equity financing to adequately finance ongoing operations; as well as other variables, uncertainties, contingencies and risks set forth as risks in the Company&#x2019;s Annual Report on Form 10&#x2011;K for the fiscal year ended October 31, 2022 (including those set forth in the &#x201c;Forward-Looking Information&#x201d; section), or as otherwise set forth in other filings by the Company as variables, contingencies and/or risks possibly affecting future results. The unaudited condensed consolidated financial statements and condensed notes are presented as permitted by Form 10&#x2011;Q and do not contain certain information included in the Company&#x2019;s annual consolidated financial statements and notes. For further information, refer to the consolidated financial statements and notes thereto included in the Company&#x2019;s Annual Report on Form 10&#x2011;K for the fiscal year ended October 31, 2022.</p>
</ix:nonNumeric>

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

<div>&#xa0;</div>

<ix:nonNumeric contextRef="d_2022-11-01_2023-01-31" name="us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" id="c244" escape="true">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 27pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>(2)</b></p>
			</td>
			<td style="width: auto;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>Stock Incentive Plans and Other Share</b>&#x2011;<b>Based Compensation</b></p>
			</td>
		</tr>

</tbody></table>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">As of January 31, 2023, there were approximately <ix:nonFraction id="c248" contextRef="i_2023-01-31_PlanNameAxis-Plan2017Member" unitRef="Share" name="us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" scale="0" format="ixt:numdotdecimal" decimals="INF">381,000</ix:nonFraction> remaining shares available for grant under the Optical Cable Corporation Stock Incentive Plan (&#x201c;2017 Plan&#x201d;).</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">Share-based compensation expense for employees, a consultant and non-employee Directors recognized in the condensed consolidated statements of operations for the three months ended January 31, 2023 and 2022 was $<ix:nonFraction id="c253" contextRef="d_2022-11-01_2023-01-31_PlanNameAxis-Plan2017Member_TitleOfIndividualAxis-EmployeesConsultantAndNonemployeeDirectorsMember" unitRef="USD" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="0" format="ixt:numdotdecimal" decimals="0">135,041</ix:nonFraction> and $<ix:nonFraction id="c254" contextRef="d_2021-11-01_2022-01-31_PlanNameAxis-Plan2017Member_TitleOfIndividualAxis-EmployeesConsultantAndNonemployeeDirectorsMember" unitRef="USD" name="us-gaap:AllocatedShareBasedCompensationExpense" scale="0" format="ixt:numdotdecimal" decimals="0">124,439</ix:nonFraction>, respectively. Share-based compensation expense is entirely related to expense recognized in connection with the vesting of restricted stock awards or other stock awards.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt 0pt 0pt 27pt;"><i>Stock Compensation</i></p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">The Company has granted, and anticipates granting from time to time, restricted stock awards subject to approval by the Compensation Committee of the Board of Directors. Since fiscal year 2004, the Company has exclusively used restricted stock awards for all share-based compensation of employees and consultants, and restricted stock awards or stock awards to non-employee members of the Board of Directors.</p>

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

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

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="display: table; width: 100%;">
<div class="hf-row" style="display: table-row;">
<div class="hf-cell TOCLink" style="text-align: left; margin: 0pt; display: table-cell;"><a href="#toc" style="font-weight: initial; font-style: initial; font-variant: initial; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">Table of Contents</a></div>
</div>

<div class="hf-row" style="display: table-row;">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center; font-weight: bold; margin: 0pt; display: table-cell;">OPTICAL CABLE CORPORATION</div>
</div>

<div class="hf-row" style="display: table-row;">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center; margin: 0pt; display: table-cell;">Condensed Notes to Condensed Consolidated Financial Statements</div>
</div>

<div class="hf-row" style="display: table-row;">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center; margin: 0pt; display: table-cell;">Three Months Ended January 31, 2023</div>
</div>

<div class="hf-row" style="display: table-row;">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center; margin: 0pt; display: table-cell;">(Unaudited)</div>
</div>
</div>
</div></ix:exclude>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">Restricted stock award activity during the three months ended January 31, 2023 consisted of restricted shares withheld for taxes in connection with the vesting of restricted shares totaling <ix:nonFraction id="c259" contextRef="d_2022-11-01_2023-01-31_AwardTypeAxis-RestrictedStockMember" unitRef="Share" name="us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation" scale="0" format="ixt:numdotdecimal" decimals="INF">24,646</ix:nonFraction> shares. OCC restricted stock grants provide the participant with the option to surrender shares to pay for withholding tax obligations resulting from any vesting restricted shares, or to pay cash to the Company or taxing authorities in the amount of the withholding taxes owed on the value of any vesting restricted shares in order to avoid surrendering shares. The Company accrued $<ix:nonFraction id="c260" contextRef="d_2022-11-01_2023-01-31_AwardTypeAxis-RestrictedStockMember" unitRef="USD" name="us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" scale="0" format="ixt:numdotdecimal" decimals="0">100,719</ix:nonFraction> as of January 31, 2023 related to the surrender of shares by participants to pay for withholding taxes on shares that vested on January 31, 2023.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">As of January 31, 2023, the estimated amount of compensation cost related to unvested equity-based compensation awards in the form of service-based and operational performance-based shares that the Company will recognize over a <ix:nonNumeric contextRef="d_2022-11-01_2023-01-31_AwardTypeAxis-RestrictedStockMember" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" id="c267" format="ixt-sec:duryear">2.5</ix:nonNumeric> year weighted-average period is approximately $<ix:nonFraction id="c268" contextRef="i_2023-01-31_AwardTypeAxis-RestrictedStockMember" unitRef="USD" name="us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" scale="0" format="ixt:numdotdecimal" decimals="0">885,000</ix:nonFraction>.</p>
</ix:nonNumeric>

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

<div>&#xa0;</div>

<ix:nonNumeric contextRef="d_2022-11-01_2023-01-31" name="occ:AllowanceForDoubtfulAccountsForTradeAccountsReceivableDisclosureTextBlock" id="c269" escape="true">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 27pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>(3)</b></p>
			</td>
			<td style="width: auto;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>Allowance for Doubtful Accounts for Trade Accounts Receivable</b></p>
			</td>
		</tr>

</tbody></table>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 28pt;">A summary of changes in the allowance for doubtful accounts for trade accounts receivable for the three months ended January 31, 2023 and 2022 follows:</p>

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

<ix:nonNumeric contextRef="d_2022-11-01_2023-01-31" name="occ:SummaryOfChangesInAllowanceForDoubtfulAccountsForTradeAccountsReceivableTableTextBlock" id="c281" escape="true">
<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; margin-left: 27pt; width: 95%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;">

		<tbody><tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Three Months Ended</b> </b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>January 31,</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2023</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 68%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Balance at beginning of period</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c283" contextRef="i_2022-10-31" unitRef="USD" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">69,643</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c284" contextRef="i_2021-10-31" unitRef="USD" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">61,527</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Bad debt expense</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c285" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:ProvisionForDoubtfulAccounts" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">9,787</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c286" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:ProvisionForDoubtfulAccounts" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">4,328</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Balance at end of period</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c287" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">59,856</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c288" contextRef="i_2022-01-31" unitRef="USD" name="us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">57,199</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
		</tr>

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

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

<div>&#xa0;</div>

<ix:nonNumeric contextRef="d_2022-11-01_2023-01-31" name="us-gaap:InventoryDisclosureTextBlock" id="c289" escape="true">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 27pt;">
			<p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>(4)</b></p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>Inventories</b></p>
			</td>
		</tr>

</tbody></table>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">Inventories as of January 31, 2023 and October 31, 2022 consist of the following:</p>

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

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

		<tbody><tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>January 31,</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>October 31,</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>2023</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>2022</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 68%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Finished goods</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c303" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:InventoryFinishedGoodsNetOfReserves" scale="0" format="ixt:numdotdecimal" decimals="0">4,614,820</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c304" contextRef="i_2022-10-31" unitRef="USD" name="us-gaap:InventoryFinishedGoodsNetOfReserves" scale="0" format="ixt:numdotdecimal" decimals="0">3,894,102</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Work in process</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c305" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:InventoryWorkInProcessNetOfReserves" scale="0" format="ixt:numdotdecimal" decimals="0">5,119,033</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c306" contextRef="i_2022-10-31" unitRef="USD" name="us-gaap:InventoryWorkInProcessNetOfReserves" scale="0" format="ixt:numdotdecimal" decimals="0">4,054,789</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Raw materials</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c307" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:InventoryRawMaterialsNetOfReserves" scale="0" format="ixt:numdotdecimal" decimals="0">12,157,110</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c308" contextRef="i_2022-10-31" unitRef="USD" name="us-gaap:InventoryRawMaterialsNetOfReserves" scale="0" format="ixt:numdotdecimal" decimals="0">11,093,140</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Production supplies</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c309" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:InventorySuppliesNetOfReserves" scale="0" format="ixt:numdotdecimal" decimals="0">370,422</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c310" contextRef="i_2022-10-31" unitRef="USD" name="us-gaap:InventorySuppliesNetOfReserves" scale="0" format="ixt:numdotdecimal" decimals="0">396,735</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Total</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c311" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:InventoryNet" scale="0" format="ixt:numdotdecimal" decimals="0">22,261,385</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c312" contextRef="i_2022-10-31" unitRef="USD" name="us-gaap:InventoryNet" scale="0" format="ixt:numdotdecimal" decimals="0">19,438,766</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
		</tr>

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

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

<div>&#xa0;</div>

<ix:nonNumeric contextRef="d_2022-11-01_2023-01-31" name="us-gaap:ProductWarrantyDisclosureTextBlock" id="c313" escape="true">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 27pt;">
			<p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>(5) </b></p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>Product Warranties</b></p>
			</td>
		</tr>

</tbody></table>

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

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 27pt; text-align: justify;">As of January 31, 2023 and October&#xa0;31, 2022, the Company&#x2019;s accrual for estimated product warranty claims totaled $<ix:nonFraction id="c315" contextRef="i_2023-01-31_BalanceSheetLocationAxis-AccountsPayableAndAccruedLiabilitiesMember" unitRef="USD" name="us-gaap:ProductWarrantyAccrual" scale="0" format="ixt:numdotdecimal" decimals="0">65,000</ix:nonFraction> and $<ix:nonFraction id="c316" contextRef="i_2022-10-31_BalanceSheetLocationAxis-AccountsPayableAndAccruedLiabilitiesMember" unitRef="USD" name="us-gaap:ProductWarrantyAccrual" scale="0" format="ixt:numdotdecimal" decimals="0">75,000</ix:nonFraction>, respectively, and is included in accounts payable and accrued expenses. Warranty claims expense for the three months ended January 31, 2023 and 2022 totaled $<ix:nonFraction id="c317" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:ProductWarrantyExpense" scale="0" format="ixt:numdotdecimal" decimals="0">16,574</ix:nonFraction> and $<ix:nonFraction id="c318" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:ProductWarrantyExpense" scale="0" format="ixt:numdotdecimal" decimals="0">7,894</ix:nonFraction>, respectively.</p>

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

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

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="display: table; width: 100%;">
<div class="hf-row" style="display: table-row;">
<div class="hf-cell TOCLink" style="text-align: left; margin: 0pt; display: table-cell;"><a href="#toc" style="font-weight: initial; font-style: initial; font-variant: initial; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">Table of Contents</a></div>
</div>

<div class="hf-row" style="display: table-row;">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center; font-weight: bold; margin: 0pt; display: table-cell;">OPTICAL CABLE CORPORATION</div>
</div>

<div class="hf-row" style="display: table-row;">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center; margin: 0pt; display: table-cell;">Condensed Notes to Condensed Consolidated Financial Statements</div>
</div>

<div class="hf-row" style="display: table-row;">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center; margin: 0pt; display: table-cell;">Three Months Ended January 31, 2023</div>
</div>

<div class="hf-row" style="display: table-row;">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center; margin: 0pt; display: table-cell;">(Unaudited)</div>
</div>
</div>
</div></ix:exclude>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">The following table summarizes the changes in the Company&#x2019;s accrual for product warranties during the three months ended January 31, 2023 and 2022:</p>

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

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

		<tbody><tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Three Months Ended</b> </b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>January 31,</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2023</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 68%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Balance at beginning of period</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c331" contextRef="i_2022-10-31" unitRef="USD" name="us-gaap:ProductWarrantyAccrual" scale="0" format="ixt:numdotdecimal" decimals="0">75,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c332" contextRef="i_2021-10-31" unitRef="USD" name="us-gaap:ProductWarrantyAccrual" scale="0" format="ixt:numdotdecimal" decimals="0">75,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Liabilities accrued for warranties issued during the period</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c333" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:ProductWarrantyAccrualWarrantiesIssued" scale="0" format="ixt:numdotdecimal" decimals="0">55,430</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c334" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:ProductWarrantyAccrualWarrantiesIssued" scale="0" format="ixt:numdotdecimal" decimals="0">55,243</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Warranty claims and costs paid during the period</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">(<ix:nonFraction id="c335" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:ProductWarrantyAccrualPayments" scale="0" format="ixt:numdotdecimal" decimals="0">26,574</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">(<ix:nonFraction id="c336" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:ProductWarrantyAccrualPayments" scale="0" format="ixt:numdotdecimal" decimals="0">7,894</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Changes in liability for pre-existing warranties during the period</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c337" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:ProductWarrantyAccrualPreexistingIncreaseDecrease" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">38,856</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c338" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:ProductWarrantyAccrualPreexistingIncreaseDecrease" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">47,349</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Balance at end of period</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c339" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:ProductWarrantyAccrual" scale="0" format="ixt:numdotdecimal" decimals="0">65,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c340" contextRef="i_2022-01-31" unitRef="USD" name="us-gaap:ProductWarrantyAccrual" scale="0" format="ixt:numdotdecimal" decimals="0">75,000</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
		</tr>

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

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

<div>&#xa0;</div>

<ix:nonNumeric contextRef="d_2022-11-01_2023-01-31" name="us-gaap:LongTermDebtTextBlock" id="c341" escape="true">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 27pt;">
			<p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>(6)</b></p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>Long-term Debt and Notes Payable </b></p>
			</td>
		</tr>

</tbody></table>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 28pt;">The Company has credit facilities consisting of a real estate term loan, as amended and restated (the &#x201c;Virginia Real Estate Loan&#x201d;), a supplemental real estate term loan, as amended and restated (the &#x201c;North Carolina Real Estate Loan&#x201d;) and a Revolving Credit Master Promissory Note and related agreements (collectively, the &#x201c;Revolver&#x201d;).</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">Both the Virginia Real Estate Loan and the North Carolina Real Estate Loan are with Northeast Bank, have a fixed interest rate of <ix:nonFraction id="c343" contextRef="i_2023-01-31_LineOfCreditFacilityAxis-PinnacleFinancialPartnersMember_LongtermDebtTypeAxis-VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember" unitRef="Pure" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" scale="-2" format="ixt:numdotdecimal" decimals="4">3.95</ix:nonFraction>% and are secured by a first lien deed of trust on the Company&#x2019;s real property.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;text-indent:27pt;">Long-term debt as of January 31, 2023 and October 31, 2022 consists of the following:</p>

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

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

		<tbody><tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>January 31,</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>October 31,</b></b> </b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>2023</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>2022</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt; text-indent: -9pt;">Virginia Real Estate Loan ($<ix:nonFraction id="c391" contextRef="i_2023-01-31_LongtermDebtTypeAxis-VirginiaRealEstateLoanMember" unitRef="USD" name="us-gaap:DebtInstrumentFaceAmount" scale="6" format="ixt:numdotdecimal" decimals="-5"><ix:nonFraction id="c392" contextRef="i_2022-10-31_LongtermDebtTypeAxis-VirginiaRealEstateLoanMember" unitRef="USD" name="us-gaap:DebtInstrumentFaceAmount" scale="6" format="ixt:numdotdecimal" decimals="-5">6.5</ix:nonFraction></ix:nonFraction> million original principal) payable in monthly installments of $<ix:nonFraction id="c393" contextRef="d_2022-11-01_2023-01-31_LongtermDebtTypeAxis-VirginiaRealEstateLoanMember" unitRef="USD" name="us-gaap:DebtInstrumentPeriodicPayment" scale="0" format="ixt:numdotdecimal" decimals="0"><ix:nonFraction id="c394" contextRef="d_2021-11-01_2022-10-31_LongtermDebtTypeAxis-VirginiaRealEstateLoanMember" unitRef="USD" name="us-gaap:DebtInstrumentPeriodicPayment" scale="0" format="ixt:numdotdecimal" decimals="0">31,812</ix:nonFraction></ix:nonFraction>, including interest (at <ix:nonFraction id="c395" contextRef="i_2023-01-31_LongtermDebtTypeAxis-VirginiaRealEstateLoanMember" unitRef="Pure" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" scale="-2" format="ixt:numdotdecimal" decimals="4"><ix:nonFraction id="c396" contextRef="i_2022-10-31_LongtermDebtTypeAxis-VirginiaRealEstateLoanMember" unitRef="Pure" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" scale="-2" format="ixt:numdotdecimal" decimals="4">3.95</ix:nonFraction></ix:nonFraction>%), with final payment of $<ix:nonFraction id="c397" contextRef="i_2023-01-31_LongtermDebtTypeAxis-VirginiaRealEstateLoanMember" unitRef="USD" name="us-gaap:DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid" scale="0" format="ixt:numdotdecimal" decimals="0"><ix:nonFraction id="c398" contextRef="i_2022-10-31_LongtermDebtTypeAxis-VirginiaRealEstateLoanMember" unitRef="USD" name="us-gaap:DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid" scale="0" format="ixt:numdotdecimal" decimals="0">3,318,029</ix:nonFraction></ix:nonFraction> due <ix:nonNumeric contextRef="d_2022-11-01_2023-01-31_LongtermDebtTypeAxis-VirginiaRealEstateLoanMember" name="us-gaap:DebtInstrumentMaturityDate" id="c399" format="ixt:datemonthdayyearen"><ix:nonNumeric contextRef="d_2021-11-01_2022-10-31_LongtermDebtTypeAxis-VirginiaRealEstateLoanMember" name="us-gaap:DebtInstrumentMaturityDate" id="c400" format="ixt:datemonthdayyearen">May 1, 2024</ix:nonNumeric></ix:nonNumeric></p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c401" contextRef="i_2023-01-31_LongtermDebtTypeAxis-VirginiaRealEstateLoanMember" unitRef="USD" name="us-gaap:LongTermDebt" scale="0" format="ixt:numdotdecimal" decimals="0">3,610,701</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c402" contextRef="i_2022-10-31_LongtermDebtTypeAxis-VirginiaRealEstateLoanMember" unitRef="USD" name="us-gaap:LongTermDebt" scale="0" format="ixt:numdotdecimal" decimals="0">3,669,294</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt; text-indent: -9pt;">North Carolina Real Estate Loan ($<ix:nonFraction id="c403" contextRef="i_2023-01-31_LongtermDebtTypeAxis-NorthCarolinaRealEstateLoanMember" unitRef="USD" name="us-gaap:DebtInstrumentFaceAmount" scale="6" format="ixt:numdotdecimal" decimals="-4"><ix:nonFraction id="c404" contextRef="i_2022-10-31_LongtermDebtTypeAxis-NorthCarolinaRealEstateLoanMember" unitRef="USD" name="us-gaap:DebtInstrumentFaceAmount" scale="6" format="ixt:numdotdecimal" decimals="-4">2.24</ix:nonFraction></ix:nonFraction> million original principal) payable in monthly installments of $<ix:nonFraction id="c405" contextRef="d_2022-11-01_2023-01-31_LongtermDebtTypeAxis-NorthCarolinaRealEstateLoanMember" unitRef="USD" name="us-gaap:DebtInstrumentPeriodicPayment" scale="0" format="ixt:numdotdecimal" decimals="0"><ix:nonFraction id="c406" contextRef="d_2021-11-01_2022-10-31_LongtermDebtTypeAxis-NorthCarolinaRealEstateLoanMember" unitRef="USD" name="us-gaap:DebtInstrumentPeriodicPayment" scale="0" format="ixt:numdotdecimal" decimals="0">10,963</ix:nonFraction></ix:nonFraction>, including interest (at <ix:nonFraction id="c407" contextRef="i_2023-01-31_LongtermDebtTypeAxis-NorthCarolinaRealEstateLoanMember" unitRef="Pure" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" scale="-2" format="ixt:numdotdecimal" decimals="4"><ix:nonFraction id="c408" contextRef="i_2022-10-31_LongtermDebtTypeAxis-NorthCarolinaRealEstateLoanMember" unitRef="Pure" name="us-gaap:DebtInstrumentInterestRateStatedPercentage" scale="-2" format="ixt:numdotdecimal" decimals="4">3.95</ix:nonFraction></ix:nonFraction>%), with final payment of $<ix:nonFraction id="c409" contextRef="i_2023-01-31_LongtermDebtTypeAxis-NorthCarolinaRealEstateLoanMember" unitRef="USD" name="us-gaap:DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid" scale="0" format="ixt:numdotdecimal" decimals="0"><ix:nonFraction id="c410" contextRef="i_2022-10-31_LongtermDebtTypeAxis-NorthCarolinaRealEstateLoanMember" unitRef="USD" name="us-gaap:DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid" scale="0" format="ixt:numdotdecimal" decimals="0">711,773</ix:nonFraction></ix:nonFraction> due <ix:nonNumeric contextRef="d_2022-11-01_2023-01-31_LongtermDebtTypeAxis-NorthCarolinaRealEstateLoanMember" name="us-gaap:DebtInstrumentMaturityDate" id="c411" format="ixt:datemonthdayyearen"><ix:nonNumeric contextRef="d_2021-11-01_2022-10-31_LongtermDebtTypeAxis-NorthCarolinaRealEstateLoanMember" name="us-gaap:DebtInstrumentMaturityDate" id="c412" format="ixt:datemonthdayyearen">May 1, 2024</ix:nonNumeric></ix:nonNumeric></p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c413" contextRef="i_2023-01-31_LongtermDebtTypeAxis-NorthCarolinaRealEstateLoanMember" unitRef="USD" name="us-gaap:LongTermDebt" scale="0" format="ixt:numdotdecimal" decimals="0">835,011</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c414" contextRef="i_2022-10-31_LongtermDebtTypeAxis-NorthCarolinaRealEstateLoanMember" unitRef="USD" name="us-gaap:LongTermDebt" scale="0" format="ixt:numdotdecimal" decimals="0">859,308</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Total long-term debt</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c415" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:LongTermDebt" scale="0" format="ixt:numdotdecimal" decimals="0">4,445,712</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"><ix:nonFraction id="c416" contextRef="i_2022-10-31" unitRef="USD" name="us-gaap:LongTermDebt" scale="0" format="ixt:numdotdecimal" decimals="0">4,528,602</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Less current installments</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c417" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:LongTermDebtCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">341,522</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c418" contextRef="i_2022-10-31" unitRef="USD" name="us-gaap:LongTermDebtCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">338,094</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Long-term debt, excluding current installments</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c419" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:LongTermDebtNoncurrent" scale="0" format="ixt:numdotdecimal" decimals="0">4,104,190</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"><ix:nonFraction id="c420" contextRef="i_2022-10-31" unitRef="USD" name="us-gaap:LongTermDebtNoncurrent" scale="0" format="ixt:numdotdecimal" decimals="0">4,190,508</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
		</tr>

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

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">The Revolver with North Mill Capital LLC (now doing business as SLR Business Credit, &#x201c;SLR&#x201d;) provides the Company with one or more advances in an amount up to: (a) <ix:nonFraction id="c374" contextRef="i_2023-01-31_CreditFacilityAxis-RevolvingCreditFacilityMember_LineOfCreditFacilityAxis-NorthMillCapitalLlcMember" unitRef="Pure" name="occ:LineOfCreditFacilityPercentOfEligibleAccounts" scale="-2" format="ixt:numdotdecimal" decimals="2">85</ix:nonFraction>% of the aggregate outstanding amount of eligible accounts (the &#x201c;eligible accounts loan value&#x201d;); plus (b) the lowest of (i) an amount up to <ix:nonFraction id="c375" contextRef="i_2023-01-31_CreditFacilityAxis-RevolvingCreditFacilityMember_LineOfCreditFacilityAxis-NorthMillCapitalLlcMember" unitRef="Pure" name="occ:LineOfCreditFacilityPercentOfEligibleInventory" scale="-2" format="ixt:numdotdecimal" decimals="2">35</ix:nonFraction>% of the aggregate value of eligible inventory, (ii) $<ix:nonFraction id="c376" contextRef="i_2023-01-31_CreditFacilityAxis-RevolvingCreditFacilityMember_LineOfCreditFacilityAxis-NorthMillCapitalLlcMember" unitRef="USD" name="occ:LineOfCreditFacilityAdditionalCapacityForAdvances" scale="0" format="ixt:numdotdecimal" decimals="0">5,000,000</ix:nonFraction>, and (iii) an amount not to exceed 100% of the then outstanding eligible accounts loan value; minus (c) $<ix:nonFraction id="c377" contextRef="i_2023-01-31_CreditFacilityAxis-RevolvingCreditFacilityMember_LineOfCreditFacilityAxis-NorthMillCapitalLlcMember" unitRef="USD" name="occ:LineOfCreditFacilityRestrictedCapacityForAdvances" scale="0" format="ixt:numdotdecimal" decimals="0">1,150,000</ix:nonFraction>.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">The maximum aggregate principal amount subject to the Revolver is $<ix:nonFraction id="c378" contextRef="i_2023-01-31_CreditFacilityAxis-RevolvingCreditFacilityMember_LineOfCreditFacilityAxis-NorthMillCapitalLlcMember" unitRef="USD" name="us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity" scale="0" format="ixt:numdotdecimal" decimals="0">18,000,000</ix:nonFraction>. Interest accrues on the daily balance at the per annum rate of <ix:nonFraction id="c379" contextRef="d_2022-11-01_2023-01-31_CreditFacilityAxis-RevolvingCreditFacilityMember_LineOfCreditFacilityAxis-NorthMillCapitalLlcMember_VariableRateAxis-PrimeRateMember" unitRef="Pure" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2" format="ixt:numdotdecimal" decimals="3">1.5</ix:nonFraction>% above the Prime Rate in effect from time to time, but not less than <ix:nonFraction id="c380" contextRef="i_2020-07-24_CreditFacilityAxis-RevolvingCreditFacilityMember_LineOfCreditFacilityAxis-NorthMillCapitalLlcMember" unitRef="Pure" name="us-gaap:DebtInstrumentInterestRateEffectivePercentage" scale="-2" format="ixt:numdotdecimal" decimals="4">4.75</ix:nonFraction>% (the &#x201c;Applicable Rate&#x201d;). In the event of a default, interest may become <ix:nonFraction id="c381" contextRef="i_2023-01-31_CreditFacilityAxis-RevolvingCreditFacilityMember_LineOfCreditFacilityAxis-NorthMillCapitalLlcMember_RangeAxis-MaximumMember" unitRef="Pure" name="us-gaap:DebtInstrumentInterestRateEffectivePercentage" scale="-2" format="ixt:numdotdecimal" decimals="2">6.0</ix:nonFraction>% above the Applicable Rate. As of January 31, 2023, the Revolver accrued interest at the prime lending rate plus <ix:nonFraction id="c382" contextRef="d_2022-11-01_2023-01-31_CreditFacilityAxis-RevolvingCreditFacilityMember_LineOfCreditFacilityAxis-NorthMillCapitalLlcMember_VariableRateAxis-PrimeRateMember" unitRef="Pure" name="us-gaap:DebtInstrumentBasisSpreadOnVariableRate1" scale="-2" format="ixt:numdotdecimal" decimals="3">1.5</ix:nonFraction>% (resulting in a <ix:nonFraction id="c383" contextRef="i_2023-01-31_CreditFacilityAxis-RevolvingCreditFacilityMember_LineOfCreditFacilityAxis-NorthMillCapitalLlcMember" unitRef="Pure" name="us-gaap:DebtInstrumentInterestRateEffectivePercentage" scale="-2" format="ixt:numdotdecimal" decimals="2">9.0</ix:nonFraction>% rate at January 31, 2023). The termination date of the Revolver is July 24, 2025 and the loan may be extended in <span style="-sec-ix-hidden:c384">one</span> year periods subject to the agreement of SLR.</p>

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

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

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="display: table; width: 100%;">
<div class="hf-row" style="display: table-row;">
<div class="hf-cell TOCLink" style="text-align: left; margin: 0pt; display: table-cell;"><a href="#toc" style="font-weight: initial; font-style: initial; font-variant: initial; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">Table of Contents</a></div>
</div>

<div class="hf-row" style="display: table-row;">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center; font-weight: bold; margin: 0pt; display: table-cell;">OPTICAL CABLE CORPORATION</div>
</div>

<div class="hf-row" style="display: table-row;">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center; margin: 0pt; display: table-cell;">Condensed Notes to Condensed Consolidated Financial Statements</div>
</div>

<div class="hf-row" style="display: table-row;">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center; margin: 0pt; display: table-cell;">Three Months Ended January 31, 2023</div>
</div>

<div class="hf-row" style="display: table-row;">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center; margin: 0pt; display: table-cell;">(Unaudited)</div>
</div>
</div>
</div></ix:exclude>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">The Revolver is secured by all of the following assets: properties, rights and interests in property of the Company whether now owned or existing, or hereafter acquired or arising, and wherever located; all accounts, equipment, commercial tort claims, general intangibles, chattel paper, inventory, negotiable collateral, investment property, financial assets, letter-of-credit rights, supporting obligations, deposit accounts, money or assets of the Company, which hereafter come into the possession, custody, or control of SLR; all proceeds and products, whether tangible or intangible, of any of the foregoing, including proceeds of insurance covering any or all of the foregoing; any and all tangible or intangible property resulting from the sale, lease, license or other disposition of any of the foregoing, or any portion thereof or interest therein, and all proceeds thereof; and any other assets of the Company which may be subject to a lien in favor of SLR as security for the obligations under the Loan Agreement.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">As of January 31, 2023, the Company had $<ix:nonFraction id="c385" contextRef="i_2023-01-31_CreditFacilityAxis-RevolvingCreditFacilityMember_LineOfCreditFacilityAxis-PinnacleFinancialPartnersMember" unitRef="USD" name="us-gaap:LineOfCredit" scale="6" format="ixt:numdotdecimal" decimals="-5">6.8</ix:nonFraction> million of outstanding borrowings on its Revolver and $<ix:nonFraction id="c386" contextRef="i_2023-01-31_CreditFacilityAxis-RevolvingCreditFacilityMember_LineOfCreditFacilityAxis-PinnacleFinancialPartnersMember" unitRef="USD" name="us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity" scale="6" format="ixt:numdotdecimal" decimals="-5">4.8</ix:nonFraction> million in available credit. As of October 31, 2022, the Company had $<ix:nonFraction id="c387" contextRef="i_2022-10-31_CreditFacilityAxis-RevolvingCreditFacilityMember_LineOfCreditFacilityAxis-PinnacleFinancialPartnersMember" unitRef="USD" name="us-gaap:LineOfCredit" scale="6" format="ixt:numdotdecimal" decimals="-6">6.0</ix:nonFraction> million of outstanding borrowings on its Revolver and $<ix:nonFraction id="c388" contextRef="i_2022-10-31_CreditFacilityAxis-RevolvingCreditFacilityMember_LineOfCreditFacilityAxis-PinnacleFinancialPartnersMember" unitRef="USD" name="us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity" scale="6" format="ixt:numdotdecimal" decimals="-5">5.9</ix:nonFraction> million in available credit.</p>
</ix:nonNumeric>

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

<div>&#xa0;</div>

<ix:nonNumeric contextRef="d_2022-11-01_2023-01-31" name="occ:LesseeOperatingAndFinanceLeasesDisclosureTextBlock" id="c421" escape="true">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 27pt;">
			<p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>(7)</b></p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>Leases</b></p>
			</td>
		</tr>

</tbody></table>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">The Company has an operating lease agreement for approximately <ix:nonFraction id="c423" contextRef="i_2023-01-31_LeaseContractualTermAxis-OperatingLeaseForOfficeManufacturingAndWarehouseSpaceInPlanoTexasMember" unitRef="SquareFoot" name="us-gaap:AreaOfRealEstateProperty" scale="0" format="ixt:numdotdecimal" decimals="INF">34,000</ix:nonFraction> square feet of office, manufacturing and warehouse space in Plano, Texas (near Dallas). The lease term expires on November 30, 2024.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">The Company has an operating lease agreement for approximately <ix:nonFraction id="c424" contextRef="i_2023-01-31_LeaseContractualTermAxis-OperatingLeaseForWarehouseSpaceInRoanokeVirginiaMember" unitRef="SquareFoot" name="us-gaap:AreaOfRealEstateProperty" scale="0" format="ixt:numdotdecimal" decimals="INF">36,000</ix:nonFraction> square feet of warehouse space in Roanoke, Virginia. During the first quarter of fiscal year 2023, the lease term was extended for an additional three years. The new expiration date is April 30, 2026.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">The Company also leases certain office equipment under operating leases with initial <ix:nonNumeric contextRef="i_2023-01-31_LeaseContractualTermAxis-OperatingLeaseForOfficeEquipmentMember" name="us-gaap:LesseeOperatingLeaseTermOfContract" id="c425" format="ixt-sec:durmonth">60</ix:nonNumeric> month terms. The lease terms expire in February and April of 2025.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">OCC leases printers that are used in the Roanoke, Virginia manufacturing facility. The lease term expires on August 22, 2026. The right-of-use asset is being amortized on a straight line basis over seven years. When the lease term ends, the remaining net book value of the right-of-use asset will be classified as property and equipment.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">The Company&#x2019;s lease contracts may include options to extend or terminate the leases. The Company exercises judgment to determine the term of those leases when such options are present and include such options in the calculation of the lease term when it is reasonably certain that it will exercise those options.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">The Company includes contract lease components in its determination of lease payments, while non-lease components of the contracts, such as taxes, insurance, and common area maintenance, are expensed as incurred. At commencement, right-of-use assets and lease liabilities are measured at the present value of future lease payments over the lease term. The Company uses its incremental borrowing rate based on information available at the time of lease commencement to measure the present value of future payments.</p>

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

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

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="display: table; width: 100%;">
<div class="hf-row" style="display: table-row;">
<div class="hf-cell TOCLink" style="text-align: left; margin: 0pt; display: table-cell;"><a href="#toc" style="font-weight: initial; font-style: initial; font-variant: initial; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">Table of Contents</a></div>
</div>

<div class="hf-row" style="display: table-row;">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center; font-weight: bold; margin: 0pt; display: table-cell;">OPTICAL CABLE CORPORATION</div>
</div>

<div class="hf-row" style="display: table-row;">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center; margin: 0pt; display: table-cell;">Condensed Notes to Condensed Consolidated Financial Statements</div>
</div>

<div class="hf-row" style="display: table-row;">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center; margin: 0pt; display: table-cell;">Three Months Ended January 31, 2023</div>
</div>

<div class="hf-row" style="display: table-row;">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center; margin: 0pt; display: table-cell;">(Unaudited)</div>
</div>
</div>
</div></ix:exclude>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">Operating lease expense is recognized on a straight-line basis over the lease term. Short term leases with an initial term of 12 months or less are expensed as incurred. The Company&#x2019;s short term leases have month-to-month terms.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">Operating lease right-of-use assets of $<ix:nonFraction id="c426" contextRef="i_2023-01-31_BalanceSheetLocationAxis-OtherAssetsMember" unitRef="USD" name="us-gaap:OperatingLeaseRightOfUseAsset" scale="0" format="ixt:numdotdecimal" decimals="0">867,974</ix:nonFraction> and $<ix:nonFraction id="c427" contextRef="i_2022-10-31_BalanceSheetLocationAxis-OtherAssetsMember" unitRef="USD" name="us-gaap:OperatingLeaseRightOfUseAsset" scale="0" format="ixt:numdotdecimal" decimals="0">662,328</ix:nonFraction> were included in other assets at January 31, 2023 and October 31, 2022, respectively. Operating lease liabilities of $<ix:nonFraction id="c428" contextRef="i_2023-01-31_BalanceSheetLocationAxis-AccountsPayableAndAccruedLiabilitiesMember" unitRef="USD" name="us-gaap:OperatingLeaseLiabilityCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">387,013</ix:nonFraction> and $<ix:nonFraction id="c429" contextRef="i_2023-01-31_BalanceSheetLocationAxis-OtherNoncurrentLiabilitiesMember" unitRef="USD" name="us-gaap:OperatingLeaseLiabilityNoncurrent" scale="0" format="ixt:numdotdecimal" decimals="0">541,904</ix:nonFraction> were included in accounts payable and accrued expenses, and other noncurrent liabilities, respectively, at January 31, 2023. Operating lease liabilities of $<ix:nonFraction id="c430" contextRef="i_2022-10-31_BalanceSheetLocationAxis-AccountsPayableAndAccruedLiabilitiesMember" unitRef="USD" name="us-gaap:OperatingLeaseLiabilityCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">355,183</ix:nonFraction> and $<ix:nonFraction id="c431" contextRef="i_2022-10-31_BalanceSheetLocationAxis-OtherNoncurrentLiabilitiesMember" unitRef="USD" name="us-gaap:OperatingLeaseLiabilityNoncurrent" scale="0" format="ixt:numdotdecimal" decimals="0">374,570</ix:nonFraction> were included in accounts payable and accrued expenses, and other noncurrent liabilities, respectively, at October 31, 2022. Operating lease expense recognized during the three months ended January 31, 2023 and 2022 totaled $<ix:nonFraction id="c432" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:OperatingLeaseExpense" scale="0" format="ixt:numdotdecimal" decimals="0"><ix:nonFraction id="c433" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:OperatingLeaseExpense" scale="0" format="ixt:numdotdecimal" decimals="0">103,333</ix:nonFraction></ix:nonFraction>.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">The weighted average remaining lease term was <ix:nonNumeric contextRef="i_2023-01-31" name="us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1" id="c434" format="ixt-sec:durmonth">29</ix:nonNumeric> months and the weighted average discount rate was <ix:nonFraction id="c435" contextRef="i_2023-01-31" unitRef="Pure" name="us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent" scale="-2" format="ixt:numdotdecimal" decimals="2">7.0</ix:nonFraction>% as of January 31, 2023.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">For the three months ended January 31, 2023 and 2022, cash paid for operating lease liabilities totaled $<ix:nonFraction id="c436" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:OperatingLeasePayments" scale="0" format="ixt:numdotdecimal" decimals="0">109,815</ix:nonFraction> and $<ix:nonFraction id="c437" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:OperatingLeasePayments" scale="0" format="ixt:numdotdecimal" decimals="0">107,284</ix:nonFraction>, respectively. For the three months ended January 31, 2023, right-of-use assets obtained in exchange for new operating lease liabilities totaled $<ix:nonFraction id="c438" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" scale="0" format="ixt:numdotdecimal" decimals="0">316,028</ix:nonFraction> and there was a reduction in right-of-use assets for modified operating lease liabilities totaling $<ix:nonFraction id="c439" contextRef="i_2023-01-31" unitRef="USD" name="occ:OperatingLeaseRightofUseAssetReduction" scale="0" format="ixt:numdotdecimal" decimals="0">15,719</ix:nonFraction>. For the three months ended January 31, 2022, there were <span style="-sec-ix-hidden:c440">no</span> right-of-use assets obtained in exchange for new operating lease liabilities.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">Financing lease right-of-use assets of $<ix:nonFraction id="c441" contextRef="i_2023-01-31_BalanceSheetLocationAxis-OtherAssetsMember" unitRef="USD" name="us-gaap:FinanceLeaseRightOfUseAsset" scale="0" format="ixt:numdotdecimal" decimals="0">163,465</ix:nonFraction> and $<ix:nonFraction id="c442" contextRef="i_2022-10-31_BalanceSheetLocationAxis-OtherAssetsMember" unitRef="USD" name="us-gaap:FinanceLeaseRightOfUseAsset" scale="0" format="ixt:numdotdecimal" decimals="0">170,839</ix:nonFraction> were included in other assets at January 31, 2023 and October 31, 2022, respectively. Financing lease liabilities of $<ix:nonFraction id="c443" contextRef="i_2023-01-31_BalanceSheetLocationAxis-AccountsPayableAndAccruedLiabilitiesCurrentMember" unitRef="USD" name="us-gaap:FinanceLeaseLiabilityCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">36,150</ix:nonFraction> and $<ix:nonFraction id="c444" contextRef="i_2023-01-31_BalanceSheetLocationAxis-OtherNoncurrentLiabilitiesMember" unitRef="USD" name="us-gaap:FinanceLeaseLiabilityNoncurrent" scale="0" format="ixt:numdotdecimal" decimals="0">121,711</ix:nonFraction> were included in accounts payable and accrued expenses, and other noncurrent liabilities, respectively, at January 31, 2023. Financing lease liabilities of $<ix:nonFraction id="c445" contextRef="i_2022-10-31_BalanceSheetLocationAxis-AccountsPayableAndAccruedLiabilitiesCurrentMember" unitRef="USD" name="us-gaap:FinanceLeaseLiabilityCurrent" scale="0" format="ixt:numdotdecimal" decimals="0">35,724</ix:nonFraction> and $<ix:nonFraction id="c446" contextRef="i_2022-10-31_BalanceSheetLocationAxis-OtherNoncurrentLiabilitiesMember" unitRef="USD" name="us-gaap:FinanceLeaseLiabilityNoncurrent" scale="0" format="ixt:numdotdecimal" decimals="0">130,911</ix:nonFraction> were included in accounts payable and accrued expenses, and other noncurrent liabilities, respectively, at October 31, 2022. Interest expense related to the financing lease totaled $<ix:nonFraction id="c447" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:FinanceLeaseInterestExpense" scale="0" format="ixt:numdotdecimal" decimals="0">1,944</ix:nonFraction> and $<ix:nonFraction id="c448" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:FinanceLeaseInterestExpense" scale="0" format="ixt:numdotdecimal" decimals="0">2,350</ix:nonFraction> for the three month periods ended January 31, 2023 and January 31, 2022, respectively. Amortization expense related to the financing lease totaled $<ix:nonFraction id="c449" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:FinanceLeaseRightOfUseAssetAmortization" scale="0" format="ixt:numdotdecimal" decimals="0"><ix:nonFraction id="c450" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:FinanceLeaseRightOfUseAssetAmortization" scale="0" format="ixt:numdotdecimal" decimals="0">7,374</ix:nonFraction></ix:nonFraction> for the three month periods ended January 31, 2023 and January 31, 2022.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">The remaining lease term for the financing lease is <ix:nonNumeric contextRef="i_2023-01-31" name="us-gaap:LesseeFinanceLeaseRemainingLeaseTerm" id="c451" format="ixt-sec:durmonth">43</ix:nonNumeric> months and the discount rate is <ix:nonFraction id="c452" contextRef="i_2023-01-31" unitRef="Pure" name="us-gaap:LesseeFinanceLeaseDiscountRate" scale="-2" format="ixt:numdotdecimal" decimals="4">4.75</ix:nonFraction>% as of January 31, 2023.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">For the three months ended January 31, 2023, cash paid for the financing lease liability totaled $<ix:nonFraction id="c453" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:FinanceLeaseInterestExpense" scale="0" format="ixt:numdotdecimal" decimals="0">1,944</ix:nonFraction> for interest and $<ix:nonFraction id="c454" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:FinanceLeasePrincipalPayments" scale="0" format="ixt:numdotdecimal" decimals="0">8,773</ix:nonFraction> for principal. For the three months ended January 31, 2022, cash paid for the financing lease liability totaled $<ix:nonFraction id="c455" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:FinanceLeaseInterestExpense" scale="0" format="ixt:numdotdecimal" decimals="0">2,350</ix:nonFraction> for interest and $<ix:nonFraction id="c456" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:FinanceLeasePrincipalPayments" scale="0" format="ixt:numdotdecimal" decimals="0">8,366</ix:nonFraction> for principal.</p>

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

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

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="display: table; width: 100%;">
<div class="hf-row" style="display: table-row;">
<div class="hf-cell TOCLink" style="text-align: left; margin: 0pt; display: table-cell;"><a href="#toc" style="font-weight: initial; font-style: initial; font-variant: initial; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">Table of Contents</a></div>
</div>

<div class="hf-row" style="display: table-row;">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center; font-weight: bold; margin: 0pt; display: table-cell;">OPTICAL CABLE CORPORATION</div>
</div>

<div class="hf-row" style="display: table-row;">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center; margin: 0pt; display: table-cell;">Condensed Notes to Condensed Consolidated Financial Statements</div>
</div>

<div class="hf-row" style="display: table-row;">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center; margin: 0pt; display: table-cell;">Three Months Ended January 31, 2023</div>
</div>

<div class="hf-row" style="display: table-row;">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center; margin: 0pt; display: table-cell;">(Unaudited)</div>
</div>
</div>
</div></ix:exclude>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">The Company&#x2019;s future payments due under leases reconciled to the lease liabilities are as follows:</p>

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

<ix:nonNumeric contextRef="d_2022-11-01_2023-01-31" name="occ:LesseeLeaseLiabilityMaturityTableTextBlock" id="c471" escape="true">
<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; margin-left: 10%; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;">

		<tbody><tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 62%; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"><b><b>Fiscal Year</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b><b>Operating </b></b></b></b></b></p>

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

			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b><b>lease</b></b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">2023&#xa0;<b style="font-size: 10pt;">(1)</b></p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c473" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" scale="0" format="ixt:numdotdecimal" decimals="0">329,201</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c474" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" scale="0" format="ixt:numdotdecimal" decimals="0">32,151</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">2024</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c475" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" scale="0" format="ixt:numdotdecimal" decimals="0">448,298</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c476" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:FinanceLeaseLiabilityPaymentsDueYearTwo" scale="0" format="ixt:numdotdecimal" decimals="0">42,868</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">2025</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c477" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree" scale="0" format="ixt:numdotdecimal" decimals="0">177,997</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c478" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:FinanceLeaseLiabilityPaymentsDueYearThree" scale="0" format="ixt:numdotdecimal" decimals="0">42,868</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">2026</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c479" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour" scale="0" format="ixt:numdotdecimal" decimals="0">63,644</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c480" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:FinanceLeaseLiabilityPaymentsDueYearFour" scale="0" format="ixt:numdotdecimal" decimals="0">55,715</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Total undiscounted lease payments</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c481" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue" scale="0" format="ixt:numdotdecimal" decimals="0">1,019,140</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c482" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:FinanceLeaseLiabilityPaymentsDue" scale="0" format="ixt:numdotdecimal" decimals="0">173,602</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Present value discount</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c483" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" scale="0" format="ixt:numdotdecimal" decimals="0">90,223</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(<ix:nonFraction id="c484" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:FinanceLeaseLiabilityUndiscountedExcessAmount" scale="0" format="ixt:numdotdecimal" decimals="0">15,740</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Total lease liability</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c485" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:OperatingLeaseLiability" scale="0" format="ixt:numdotdecimal" decimals="0">928,917</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c486" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:FinanceLeaseLiability" scale="0" format="ixt:numdotdecimal" decimals="0">157,862</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
		</tr>

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

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

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

		<tbody><tr style="vertical-align: bottom;">
			<td colspan="4" style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"><b><b>(1)</b> Remaining nine months of fiscal year 2023.</b></p>
			</td>
		</tr>

</tbody></table>

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

<div>&#xa0;</div>

<ix:nonNumeric contextRef="d_2022-11-01_2023-01-31" name="us-gaap:FairValueDisclosuresTextBlock" id="c487" escape="true">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 27pt;">
			<p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>(8)</b></p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>Fair Value Measurements</b></p>
			</td>
		</tr>

</tbody></table>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">The carrying amounts reported in the condensed consolidated balance sheets as of January 31, 2023 and October 31, 2022 for cash, trade accounts receivable, other receivables, current installments of long-term debt, accounts payable and accrued expenses, and accrued compensation and payroll taxes approximate fair value because of the short maturity of these instruments. The carrying values of the Company&#x2019;s note payable, revolver &#x2013; noncurrent, and long-term debt, excluding current installments, approximate fair value based on long-term debt issues available to the Company as of January 31, 2023 and October 31, 2022. Fair value is defined as the amount that would be received to sell an asset or paid to transfer a liability in an orderly transaction between market participants at the measurement date.</p>
</ix:nonNumeric>

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

<div>&#xa0;</div>

<ix:nonNumeric contextRef="d_2022-11-01_2023-01-31" name="us-gaap:EarningsPerShareTextBlock" id="c497" escape="true">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 27pt;">
			<p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><a id="notenine" title="notenine" href="#"></a><b>(9)</b></p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>Net Income (Loss) Per Share</b></p>
			</td>
		</tr>

</tbody></table>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">Basic net income (loss) per share excludes dilution and is computed by dividing net income (loss) available to common shareholders by the weighted-average number of common shares outstanding for the period. Diluted net income (loss) per share reflects the potential dilution that could occur if securities or other contracts to issue common stock were exercised or converted into common stock or resulted in the issuance of common stock that then shared in the net income (loss) of the Company.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">The following is a reconciliation of the numerators and denominators of the net income (loss) per share computations for the periods presented:</p>

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

<ix:nonNumeric contextRef="d_2022-11-01_2023-01-31" name="us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" id="c512" escape="true">
<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; margin-left: 27pt; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;">

		<tbody><tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Three months ended</b> </b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>January 31,</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2023</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 62%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Net income (loss) (numerator)</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c514" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0">809,984</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(<ix:nonFraction id="c515" contextRef="d_2021-11-01_2022-01-31" unitRef="USD" name="us-gaap:NetIncomeLoss" scale="0" format="ixt:numdotdecimal" decimals="0" sign="-">935,793</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Shares (denominator)</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c516" contextRef="d_2022-11-01_2023-01-31" unitRef="Share" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" scale="0" format="ixt:numdotdecimal" decimals="INF">7,893,194</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c517" contextRef="d_2021-11-01_2022-01-31" unitRef="Share" name="us-gaap:WeightedAverageNumberOfSharesOutstandingBasic" scale="0" format="ixt:numdotdecimal" decimals="INF">7,511,190</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Basic and diluted net income (loss) per share</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c518" contextRef="d_2022-11-01_2023-01-31" unitRef="USDPerShare" name="us-gaap:EarningsPerShareBasic" scale="0" format="ixt:numdotdecimal" decimals="INF">0.10</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(<ix:nonFraction id="c519" contextRef="d_2021-11-01_2022-01-31" unitRef="USDPerShare" name="us-gaap:EarningsPerShareBasic" scale="0" format="ixt:numdotdecimal" decimals="INF" sign="-">0.12</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">)</td>
		</tr>

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

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">Weighted average unvested shares for the three months ended January 31, 2022 totaling <ix:nonFraction id="c508" contextRef="d_2021-11-01_2022-01-31" unitRef="Share" name="us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" scale="0" format="ixt:numdotdecimal" decimals="INF">363,450</ix:nonFraction>, while issued and outstanding, were not included in the computation of basic and diluted net loss per share for the three months ended January 31, 2022 (because to include such shares would have been antidilutive, or in other words, to do so would have reduced the net loss per share for that period).</p>

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

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

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="display: table; width: 100%;">
<div class="hf-row" style="display: table-row;">
<div class="hf-cell TOCLink" style="text-align: left; margin: 0pt; display: table-cell;"><a href="#toc" style="font-weight: initial; font-style: initial; font-variant: initial; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">Table of Contents</a></div>
</div>

<div class="hf-row" style="display: table-row;">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center; font-weight: bold; margin: 0pt; display: table-cell;">OPTICAL CABLE CORPORATION</div>
</div>

<div class="hf-row" style="display: table-row;">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center; margin: 0pt; display: table-cell;">Condensed Notes to Condensed Consolidated Financial Statements</div>
</div>

<div class="hf-row" style="display: table-row;">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center; margin: 0pt; display: table-cell;">Three Months Ended January 31, 2023</div>
</div>

<div class="hf-row" style="display: table-row;">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center; margin: 0pt; display: table-cell;">(Unaudited)</div>
</div>
</div>
</div></ix:exclude>

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

<div>&#xa0;</div>

<ix:nonNumeric contextRef="d_2022-11-01_2023-01-31" name="us-gaap:ConcentrationRiskDisclosureTextBlock" id="c520" escape="true">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 27pt;">
			<p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>(10)</b></p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>Segment Information and Business and Credit Concentrations</b></p>
			</td>
		</tr>

</tbody></table>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">The Company provides credit, in the normal course of business, to various commercial enterprises, governmental entities and not&#x2011;for&#x2011;profit organizations. Concentration of credit risk with respect to trade receivables is normally limited due to the Company&#x2019;s large number of customers. The Company also manages exposure to credit risk through credit approvals, credit limits and monitoring procedures. Management believes that credit risks as of January 31, 2023 have been adequately provided for in the condensed consolidated financial statements. The Company includes all entities under common ownership for the purpose of calculating business concentrations.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">For the three months ended January 31, 2023 and 2022, <ix:nonFraction id="c522" contextRef="d_2022-11-01_2023-01-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-CustomerOneMember" unitRef="Pure" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" format="ixt:numdotdecimal" decimals="3">14.8</ix:nonFraction>% and <ix:nonFraction id="c523" contextRef="d_2021-11-01_2022-01-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-CustomerOneMember" unitRef="Pure" name="us-gaap:ConcentrationRiskPercentage1" scale="-2" format="ixt:numdotdecimal" decimals="3">17.2</ix:nonFraction>%, respectively, of consolidated net sales were attributable to <span style="-sec-ix-hidden:c524"><span style="-sec-ix-hidden:c525">one</span></span> national distributor customer.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">The Company has a single reportable segment for purposes of segment reporting.</p>
</ix:nonNumeric>

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

<div>&#xa0;</div>

<ix:nonNumeric contextRef="d_2022-11-01_2023-01-31" name="us-gaap:RevenueFromContractWithCustomerTextBlock" id="c526" escape="true">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 27pt;">
			<p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>(11)</b></p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>Revenue Recognition</b></p>
			</td>
		</tr>

</tbody></table>

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

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 27pt; text-align: justify;">Revenues consist of product sales that are recognized at a specific point in time under the core principle of recognizing revenue when control transfers to the customer.&#xa0;&#xa0;The Company considers customer purchase orders, governed by master sales agreements or the Company&#x2019;s standard terms and conditions, to be the contract with the customer. &#xa0;For each contract, the promise to transfer the control of the products, each of which is individually distinct, is considered to be the identified performance obligation. The Company evaluates each customer&#x2019;s credit risk when determining whether to accept a contract.</p>

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

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 27pt; text-align: justify;">In determining transaction prices, the Company evaluates whether fixed order prices are subject to adjustment to determine the net consideration to which the Company expects to be entitled. Contracts do not include financing components, as payment terms are generally due 30 to 90 days after shipment. Taxes assessed by governmental authorities and collected from the customer including, but not limited to, sales and use taxes and value-added taxes, are not included in the transaction price and are not included in net sales.&#xa0;</p>

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

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 27pt; text-align: justify;">The Company recognizes revenue at the point in time when products are shipped or delivered from its manufacturing facility to its customer, in accordance with the agreed upon shipping terms.&#xa0;&#xa0;Since the Company typically invoices the customer at the same time that performance obligations are satisfied, no contract assets are recognized. The Company&#x2019;s contract liability represents advance consideration received from customers prior to transfer of the product.&#xa0;&#xa0;This liability was&#xa0;$<ix:nonFraction id="c528" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:ContractWithCustomerLiability" scale="0" format="ixt:numdotdecimal" decimals="0">59,313</ix:nonFraction> as of January 31, 2023 and $<ix:nonFraction id="c529" contextRef="i_2022-10-31" unitRef="USD" name="us-gaap:ContractWithCustomerLiability" scale="0" format="ixt:numdotdecimal" decimals="0">317,310</ix:nonFraction> as of October 31, 2022.</p>

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

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 27pt; text-align: justify;">Sales to certain customers are made pursuant to agreements that provide price adjustments and limited return rights with respect to the Company&#x2019;s products.&#xa0;&#xa0;The Company maintains a reserve for estimated future price adjustment claims, rebates and returns as a refund liability. The Company&#x2019;s refund liability was $<ix:nonFraction id="c530" contextRef="i_2023-01-31" unitRef="USD" name="us-gaap:ContractWithCustomerRefundLiability" scale="0" format="ixt:numdotdecimal" decimals="0">257,749</ix:nonFraction> as of January 31, 2023 and&#xa0;$<ix:nonFraction id="c531" contextRef="i_2022-10-31" unitRef="USD" name="us-gaap:ContractWithCustomerRefundLiability" scale="0" format="ixt:numdotdecimal" decimals="0">233,494</ix:nonFraction> as of October 31, 2022.</p>

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

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 27pt; text-align: justify;">The Company offers standard product warranty coverage which provides assurance that its products will conform to contractually agreed-upon specifications for a limited period from the date of shipment. Separately-priced warranty coverage is not offered. The warranty claim is generally limited to a credit equal to the purchase price or a promise to repair or replace the product for a specified period of time at no additional charge.&#xa0;</p>

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

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

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="display: table; width: 100%;">
<div class="hf-row" style="display: table-row;">
<div class="hf-cell TOCLink" style="text-align: left; margin: 0pt; display: table-cell;"><a href="#toc" style="font-weight: initial; font-style: initial; font-variant: initial; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">Table of Contents</a></div>
</div>

<div class="hf-row" style="display: table-row;">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center; font-weight: bold; margin: 0pt; display: table-cell;">OPTICAL CABLE CORPORATION</div>
</div>

<div class="hf-row" style="display: table-row;">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center; margin: 0pt; display: table-cell;">Condensed Notes to Condensed Consolidated Financial Statements</div>
</div>

<div class="hf-row" style="display: table-row;">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center; margin: 0pt; display: table-cell;">Three Months Ended January 31, 2023</div>
</div>

<div class="hf-row" style="display: table-row;">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center; margin: 0pt; display: table-cell;">(Unaudited)</div>
</div>
</div>
</div></ix:exclude>

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

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 27pt; text-align: justify;">The Company accounts for shipping and handling activities related to contracts with customers as a cost to fulfill its promise to transfer control of the related product.&#xa0;&#xa0;Shipping and handling costs are included in selling, general and administrative expenses in the accompanying Condensed Consolidated Statements of Operations.</p>

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

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 27pt; text-align: justify;">The Company incurs sales commissions to acquire customer contracts that are directly attributable to the contracts.&#xa0;&#xa0;The commissions are expensed as selling expenses during the period that the related products are transferred to customers.</p>

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

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 27pt; text-align: justify;"><i>Disaggregation of Revenue</i></p>

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

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 27pt; text-align: justify;">The following table presents net sales attributable to the United States and all other countries in total for the three months ended January 31, 2023 and 2022:</p>

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

<ix:nonNumeric contextRef="d_2022-11-01_2023-01-31" name="us-gaap:RevenueFromExternalCustomersByGeographicAreasTableTextBlock" id="c538" escape="true">
<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; margin-left: 27pt; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;">

		<tbody><tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b>Three months ended</b></b> </b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b>January 31,</b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>2023</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>2022</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 62%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">United States</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c540" contextRef="d_2022-11-01_2023-01-31_StatementGeographicalAxis-US" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">14,578,085</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"><ix:nonFraction id="c541" contextRef="d_2021-11-01_2022-10-31_StatementGeographicalAxis-US" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">12,144,379</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Outside the United States</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c542" contextRef="d_2022-11-01_2023-01-31_StatementGeographicalAxis-NonUsMember" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">3,705,590</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#xa0;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"><ix:nonFraction id="c543" contextRef="d_2021-11-01_2022-10-31_StatementGeographicalAxis-NonUsMember" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">2,295,916</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Total net sales</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c544" contextRef="d_2022-11-01_2023-01-31" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">18,283,675</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"><ix:nonFraction id="c545" contextRef="d_2021-11-01_2022-10-31" unitRef="USD" name="us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax" scale="0" format="ixt:numdotdecimal" decimals="0">14,440,295</ix:nonFraction></td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#xa0;</td>
		</tr>

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

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

<div>&#xa0;</div>

<ix:nonNumeric contextRef="d_2022-11-01_2023-01-31" name="us-gaap:CommitmentsAndContingenciesDisclosureTextBlock" id="c546" escape="true">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 27pt;">
			<p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>(12)</b></p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>Contingencies</b></p>
			</td>
		</tr>

</tbody></table>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">From time to time, the Company is involved in various claims, legal actions and regulatory reviews arising in the ordinary course of business. In the opinion of management, the ultimate disposition of these matters will not have a material adverse effect on the Company&#x2019;s financial position, results of operations or liquidity.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">The Company believes continuing and lingering direct and indirect impacts of the COVID-19 pandemic and certain macroeconomic trends as the COVID-19 pandemic has become more endemic-like in the U.S. have created challenges that have affected production volumes and sales. While improving, the Company has continued to experience certain challenges recruiting additional personnel (particularly, production personnel), as well as certain raw material supply chain challenges, which can impact sales, shipped product volumes, pricing and lead times for certain products. The Company believes it has taken steps to successfully mitigate (to a certain extent) the impacts of these challenges; however, at this time the Company believes these challenges may continue.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">The extent to which any direct and indirect impacts of the COVID-19 pandemic and certain related macroeconomic trends may continue to affect the Company in the future will depend on ongoing developments, which are highly uncertain and cannot be reasonably predicted, including, but not limited to, the duration and severity of any future outbreaks; the timing and extent of any imposition or easing of restrictions on businesses and individuals in various markets; any impact on product demand in certain of the Company&#x2019;s markets; the potential for any resurgence of the virus (including its variant strains); any supply chain and labor constraints impacting production volumes and costs directly or indirectly resulting from the pandemic and after effects of the pandemic; as well as a variety of other unknowable factors.</p>
</ix:nonNumeric>

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

<div>&#xa0;</div>

<ix:nonNumeric contextRef="d_2022-11-01_2023-01-31" name="us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" id="c548" escape="true">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 27pt;">
			<p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>(13) </b></p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>New Accounting Standards Not Yet Adopted</b></p>
			</td>
		</tr>

</tbody></table>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt 0pt 0pt 28pt;">There are no new accounting standards issued, but not yet adopted by the Company, which are expected to materially impact the Company&#x2019;s financial position, operating results or financial statement disclosures.</p>

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

<div>&#xa0;</div>

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

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="text-align: left; width: 100%">
<div class="hf-row">
<div class="hf-cell TOCLink" style="display: inline-block; text-align: left;"><a href="#toc" style="font-weight: initial; font-style: initial; font-variant: initial; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">Table of Contents</a></div>
</div>
</div>
</div></ix:exclude>

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

<div>&#xa0;</div>

<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"><b><a id="item2mda" title="item2mda" href="#"></a>Item 2. Management</b>&#x2019;<b>s Discussion and Analysis of Financial Condition and Results of Operations</b></p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>Forward-Looking Information</b></p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">This Form 10-Q may contain certain forward-looking information within the meaning of the federal securities laws. The forward-looking information may include, among other information, (i)&#xa0;statements concerning our outlook for the future, (ii)&#xa0;statements of belief, anticipation or expectation, (iii)&#xa0;future plans, strategies or anticipated events, and (iv)&#xa0;similar information and statements concerning matters that are not historical facts. Such forward-looking information is subject to known and unknown variables, uncertainties, contingencies and risks that may cause actual events or results to differ materially from our expectations. Such known and unknown variables, uncertainties, contingencies and risks (collectively, &#x201c;factors&#x201d;) may also adversely affect Optical Cable Corporation and its subsidiaries (collectively, the &#x201c;Company&#x201d; or &#x201c;OCC&#xae;&#x201d;), the Company&#x2019;s future results of operations and future financial condition, and/or the future equity value of the Company. Factors that could cause or contribute to such differences from our expectations or that could adversely affect the Company include, but are not limited to: the level of sales to key customers, including distributors; timing of certain projects and purchases by key customers; the economic conditions affecting network service providers; corporate and/or government spending on information technology; actions by competitors; fluctuations in the price of raw materials (including optical fiber, copper, gold and other precious metals, plastics and other materials); fluctuations in transportation costs; our dependence on customized equipment for the manufacture of certain of our products in certain production facilities; our ability to protect our proprietary manufacturing technology; market conditions influencing prices or pricing in one or more of the markets in which we participate, including the impact of increased competition; our dependence on a limited number of suppliers for certain product components; the loss of or conflict with one or more key suppliers or customers; an adverse outcome in any litigation, claims and other actions, and potential litigation, claims and other actions against us; an adverse outcome in any regulatory reviews and audits and potential regulatory reviews and audits; adverse changes in state tax laws and/or positions taken by state taxing authorities affecting us; technological changes and introductions of new competing products; changes in end-user preferences for competing technologies relative to our product offering; economic conditions that affect the telecommunications sector, the data communications sector, certain technology sectors and/or certain industry market sectors (for example, mining, oil &amp; gas, military, and wireless carrier industry market sectors); economic conditions that affect U.S.-based manufacturers; economic conditions or changes in relative currency strengths (for example, the strengthening of the U.S. dollar relative to certain foreign currencies) and import and/or export tariffs imposed by the U.S. and other countries that affect certain geographic markets, industry market sector, and/or the economy as a whole; changes in demand for our products from certain competitors for which we provide private label connectivity products; changes in the mix of products sold during any given period (due to, among other things, seasonality or varying strength or weaknesses in particular markets in which we participate) which may impact gross profits and gross profit margins or net sales; variations in orders and production volumes of hybrid cables (fiber and copper) with high copper content, which tend to have lower gross profit margins; significant variations in sales resulting from: (i) high volatility within various geographic markets, within targeted markets and industries, for certain types of products, and/or with certain customers (whether related to the market generally or to specific customers&#x2019; business in particular), (ii) timing of large sales orders, and (iii) high sales concentration among a limited number of customers in certain markets, particularly the wireless carrier market; terrorist attacks or acts of war, any current or potential future military conflicts, and acts of civil unrest; cold wars and economic sanctions as a result of these activities; changes in the level of spending by the United States government, including, but not limited to military spending; ability to recruit and retain key personnel (including production personnel); poor labor relations; increasing labor costs; delays, extended lead times and/or changes in availability of needed raw materials, equipment and/or supplies; shipping and other logistics challenges; impact of inflation or hyperinflation on costs, including raw materials and labor, and ability to pass along any increased costs to customers; impact of rising interest rates increasing the cost of capital; impact of cybersecurity risks and incidents and the related actual or potential costs and consequences of such risks and incidents, including costs and regulations to limit such risks; the impact of data privacy laws and the General Data Protection Regulation and the related actual or potential costs and consequences; the impact of changes in accounting policies and related costs of compliance, including changes by the Securities and Exchange Commission (&#x201c;SEC&#x201d;), the Public Company Accounting Oversight Board (&#x201c;PCAOB&#x201d;), the Financial Accounting Standards Board (&#x201c;FASB&#x201d;), and/or the International Accounting Standards Board (&#x201c;IASB&#x201d;); our ability to continue to successfully comply with, and the cost of compliance with, the provisions of Section&#xa0;404 of the Sarbanes-Oxley Act of 2002 or any revisions to that act which apply to us; the impact of changes and potential changes in federal laws and regulations adversely affecting our business and/or which result in increases in our direct and indirect costs, including our direct and indirect costs of compliance with such laws and regulations; rising healthcare costs; impact of new or changed government laws and regulations on healthcare costs; the impact of changes in state or federal tax laws and regulations increasing our costs and/or impacting the net return to investors owning our shares; any changes in the status of our compliance with covenants with our lenders; our continued ability to maintain and/or secure future debt financing and/or equity financing to adequately finance our ongoing operations; the impact of future consolidation among competitors and/or among customers adversely affecting our position with our customers and/or our market position; actions by customers adversely affecting us in reaction to the expansion of our product offering in any manner, including, but not limited to, by offering products that compete with our customers, and/or by entering into alliances with, making investments in or with, and/or acquiring parties that compete with and/or have conflicts with our customers; voluntary or involuntary delisting of the Company&#x2019;s common stock from any exchange on which it is traded; the deregistration by the Company from SEC reporting requirements as a result of the small number of holders of the Company&#x2019;s common stock; adverse reactions by customers, vendors or other service providers to unsolicited proposals regarding the ownership or management of the Company; the additional costs of considering, responding to and possibly defending our position on unsolicited proposals regarding the ownership or management of the Company; direct and indirect impacts of weather, natural disasters and/or epidemic, pandemic or endemic diseases (such as COVID-19) in the areas of the world in which we operate, market our products and/or acquire raw materials including impacts on supply chains, labor constraints impacting our production volumes and costs; any present or future government mandates, travel restrictions, shutdowns or other regulations regarding any epidemic, pandemic or endemic diseases; an increase in the number of shares of the Company&#x2019;s common stock issued and outstanding; economic downturns generally and/or in one or more of the markets in which we operate; changes in market demand, exchange rates, productivity, market dynamics, market confidence, macroeconomic and/or other economic conditions in the areas of the world in which we operate and market our products; and our success in managing the risks involved in the foregoing.</p>

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

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

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="text-align: left; width: 100%">
<div class="hf-row">
<div class="hf-cell TOCLink" style="display: inline-block; text-align: left;"><a href="#toc" style="font-weight: initial; font-style: initial; font-variant: initial; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">Table of Contents</a></div>
</div>
</div>
</div>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">We caution readers that the foregoing list of important factors is not exclusive. Furthermore, we incorporate by reference those factors included in current reports on Form 8&#x2011;K, and/or in our other filings.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Dollar amounts presented in the following discussion have been rounded to the nearest hundred thousand, except in the case of amounts less than one million and except in the case of the table set forth in the &#x201c;Results of Operations&#x201d; section, the amounts in which both cases have been rounded to the nearest thousand.</p>

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

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

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">As the COVID-19 pandemic has become more endemic-like in the U.S., we believe continuing and lingering direct and indirect impacts of the COVID-19 pandemic and certain macroeconomic trends have created certain challenges that have affected production volumes and sales. While improving, we have continued to experience certain challenges recruiting additional personnel (particularly, production personnel), as well as certain raw material supply chain challenges, which can impact sales, shipped product volumes, pricing and lead times for certain products. The Company has taken steps to successfully mitigate (to a certain extent) the impacts of these challenges; however, at this time the Company believes these challenges may continue.</p>

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

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

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="text-align: left; width: 100%">
<div class="hf-row">
<div class="hf-cell TOCLink" style="display: inline-block; text-align: left;"><a href="#toc" style="font-weight: initial; font-style: initial; font-variant: initial; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">Table of Contents</a></div>
</div>
</div>
</div>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The extent to which any continuing and lingering direct and indirect impacts of the COVID-19 pandemic and certain related macroeconomic trends may continue to affect OCC will depend on ongoing developments, which are subject to uncertainty, including, but not limited to: any supply chain and labor constraints impacting our production volumes and costs; any impact on certain of OCC&#x2019;s markets; any resurgence of the virus (including its variant strains); the degree of immunity provided by any current or future vaccines and boosters; any government mandates, travel restrictions, shutdowns or other regulations related to COVID-19 impacting the markets in which we operate, market our products and/or acquire materials; as well as a variety of other unknowable factors. We cannot fully anticipate or reasonably estimate all the ways in which the current global health crisis and its direct and indirect effects could adversely impact our business in the future.</p>

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

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

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Optical Cable Corporation (or OCC&#xae;) is a leading manufacturer of a broad range of fiber optic and copper data communication cabling and connectivity solutions primarily for the enterprise market and various harsh environment and specialty markets (collectively, the non-carrier markets), and also the wireless carrier market, offering integrated suites of high quality products which operate as a system solution or seamlessly integrate with other components. Our product offerings include designs for uses ranging from enterprise network, data center, residential, campus and Passive Optical LAN (&#x201c;POL&#x201d;) installations to customized products for specialty applications and harsh environments, including military, industrial, mining, petrochemical, renewable energy and broadcast applications, as well as the wireless carrier market. Our products include fiber optic and copper cabling, hybrid cabling (which includes fiber optic and copper elements in a single cable), fiber optic and copper connectors, specialty fiber optic, copper and hybrid connectors, fiber optic and copper patch cords, pre-terminated fiber optic and copper cable assemblies, racks, cabinets, datacom enclosures, patch panels, face plates, multimedia boxes, fiber optic reels and accessories and other cable and connectivity management accessories, and are designed to meet the most demanding needs of end-users, delivering a high degree of reliability and outstanding performance characteristics.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">OCC&#xae; is internationally recognized for pioneering the design and production of fiber optic cables for the most demanding military field applications, as well as of fiber optic cables suitable for both indoor and outdoor use, and creating a broad product offering built on the evolution of these fundamental technologies. OCC is also internationally recognized for pioneering the development of innovative copper connectivity technology and designs used to meet industry copper connectivity data communications standards.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Founded in 1983, Optical Cable Corporation is headquartered in Roanoke, Virginia with offices, manufacturing and warehouse facilities located in Roanoke, Virginia, near Asheville, North Carolina, and near Dallas, Texas. We primarily manufacture our fiber optic cables at our Roanoke facility which is ISO 9001:2015 registered and MIL-STD-790G certified, primarily manufacture our enterprise connectivity products at our Asheville facility which is ISO 9001:2015 registered, and primarily manufacture our harsh environment and specialty connectivity products at our Dallas facility which is ISO 9001:2015 registered and MIL-STD-790G certified.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">OCC designs, develops and manufactures fiber optic and hybrid cables for a broad range of enterprise, harsh environment, wireless carrier and other specialty markets and applications. We refer to these products as our fiber optic cable offering. OCC designs, develops and manufactures fiber and copper connectivity products for the enterprise market, including a broad range of enterprise and residential applications. We refer to these products as our enterprise connectivity product offering. OCC designs, develops and manufactures a broad range of specialty fiber optic connectors and connectivity solutions principally for use in military, harsh environment and other specialty applications. We refer to these products as our harsh environment and specialty connectivity product offering.</p>

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

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

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="text-align: left; width: 100%">
<div class="hf-row">
<div class="hf-cell TOCLink" style="display: inline-block; text-align: left;"><a href="#toc" style="font-weight: initial; font-style: initial; font-variant: initial; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">Table of Contents</a></div>
</div>
</div>
</div>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">We market and sell the products manufactured at our Dallas facility through our wholly owned subsidiary Applied Optical Systems, Inc. (&#x201c;AOS&#x201d;) under the names Optical Cable Corporation and OCC&#xae; by the efforts of our integrated OCC sales team.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The OCC team seeks to provide top-tier communication solutions by bundling all of our fiber optic and copper data communication product offerings into systems that are best suited for individual data communication needs and application requirements of our customers and the end-users of our systems.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">OCC&#x2019;s wholly owned subsidiary Centric Solutions LLC (&#x201c;Centric Solutions&#x201d;) provides cabling and connectivity solutions for the data center market. Centric Solutions&#x2019; business is located at OCC&#x2019;s facility near Dallas, Texas.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Optical Cable Corporation&#x2122;, OCC&#xae;, Procyon&#xae;, Superior Modular Products&#x2122;, SMP Data Communications&#x2122;, Applied Optical Systems&#x2122;, Centric Solutions&#x2122; and associated logos are trademarks of Optical Cable Corporation.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b>Summary of Company Performance for First Quarter of Fiscal Year 2023</b></p>

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

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

		<tbody><tr style="vertical-align: top;">
			<td style="width: 18pt;">&#xa0;</td>
			<td style="width: 18pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">&#x25cf;</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: justify;">Consolidated net sales for the first quarter of fiscal year 2023 increased 26.6% to $18.3 million, compared to $14.4 million for the same period last year.</p>
			</td>
		</tr>

</tbody></table>

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

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

		<tbody><tr style="vertical-align: top;">
			<td style="width: 18pt;">&#xa0;</td>
			<td style="width: 18pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">&#x25cf;</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: justify;">Gross profit increased 61.2% to $6.5 million in the first quarter of fiscal year 2023, compared to $4.0 million for the first quarter of fiscal year 2022.</p>
			</td>
		</tr>

</tbody></table>

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

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

		<tbody><tr style="vertical-align: top;">
			<td style="width: 18pt;">&#xa0;</td>
			<td style="width: 18pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">&#x25cf;</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: justify;">Gross profit margin (gross profit as a percentage of net sales) increased to 35.7% during the first quarter of fiscal year 2023, compared to 28.0% for the first quarter of fiscal year 2022.</p>
			</td>
		</tr>

</tbody></table>

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

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

		<tbody><tr style="vertical-align: top;">
			<td style="width: 18pt;">&#xa0;</td>
			<td style="width: 18pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">&#x25cf;</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: justify;">SG&amp;A expenses increased to $5.5 million during the first quarter of fiscal year 2023 compared to $4.8 million during the first quarter of fiscal year 2022. SG&amp;A expenses as a percentage of net sales were 29.8% during the first quarter of fiscal year 2023, compared to 33.1% during the same period in fiscal year 2022.</p>
			</td>
		</tr>

</tbody></table>

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

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

		<tbody><tr style="vertical-align: top;">
			<td style="width: 18pt;">&#xa0;</td>
			<td style="width: 18pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">&#x25cf;</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: justify;">Net income was $810,000, or $0.10 per share, during the first quarter of fiscal year 2023, compared to a net loss of $936,000, or $0.12 per share, for the comparable period last year.</p>
			</td>
		</tr>

</tbody></table>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt 0pt 0pt 28pt;text-indent:-28pt;"><b>Results of Operations</b></p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">We sell our products internationally and domestically to our customers which include major distributors, various regional and smaller distributors, original equipment manufacturers and value-added resellers. All of our sales to customers outside of the United States are denominated in U.S. dollars. We can experience fluctuations in the percentage of net sales to customers outside of the United States and in the United States from period to period based on the timing of large orders, coupled with the impact of increases and decreases in sales to customers in various regions of the world. Sales outside of the U.S. can also be impacted by fluctuations in the exchange rate of the U.S. dollar compared to other currencies.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><i>Net sales</i> consist of gross sales of products by the Company and its subsidiaries on a consolidated basis less discounts, refunds and returns. Revenue is recognized at the time product is transferred to the customer (including distributors) at an amount that reflects the consideration expected to be received in exchange for the product. Our customers generally do not have the right of return unless a product is defective or damaged and is within the parameters of the product warranty in effect for the sale.</p>

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

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

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="text-align: left; width: 100%">
<div class="hf-row">
<div class="hf-cell TOCLink" style="display: inline-block; text-align: left;"><a href="#toc" style="font-weight: initial; font-style: initial; font-variant: initial; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">Table of Contents</a></div>
</div>
</div>
</div>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><i>Cost of goods sold </i>consists of the cost of materials, product warranty costs and compensation costs, and overhead and other costs related to our manufacturing operations. The largest percentage of costs included in cost of goods sold is attributable to costs of materials.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Our gross profit margin percentages are heavily dependent upon product mix on a quarterly basis and may vary based on changes in product mix. To the extent not impacted by product mix, gross profit margins tend to be higher when we achieve higher net sales levels, as certain fixed manufacturing costs are spread over higher sales. Hybrid cables (containing fiber and copper) with higher copper content tend to have lower gross profit margins.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><i>Selling, general and administrative expenses</i> (&#x201c;SG&amp;A expenses&#x201d;) consist of the compensation costs for sales and marketing personnel, shipping costs, trade show expenses, customer support expenses, travel expenses, advertising, bad debt expense, the compensation costs for administration and management personnel, legal, accounting, advisory and professional fees, costs incurred to settle litigation or claims and other actions against us, and other costs associated with our operations.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><i>Royalty income (expense), net</i> consists of royalty income earned on licenses associated with our patented products, net of royalty and related expenses.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><i>Amortization of intangible assets</i> consists of the amortization of the costs, including legal fees, associated with internally developed patents that have been granted. Amortization of intangible assets is calculated using the straight-line method over the estimated useful lives of the intangible assets.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><i>Other income (expense), net </i>consists of interest expense and other miscellaneous income and expense items not directly attributable to our operations.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">The following table sets forth and highlights fluctuations in selected line items from our condensed consolidated statements of operations for the periods indicated:</p>

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

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

		<tbody><tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b>Three Months Ended</b> </b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="text-align: center; font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
			<td style="font-family: Times New Roman; font-size: 10pt;"><b>&#xa0;</b></td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b>January 31,</b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b>Percent</b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b>2023</b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b>2022</b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b>Change</b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 43%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Net sales</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">18,284,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">14,440,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">26.6</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">%</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Gross profit</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">6,521,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">4,046,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">61.2</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">SG&amp;A expenses</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">5,455,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">4,780,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">14.1</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Net income (loss)</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">810,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(936,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#xa0;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">186.6</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#xa0;</td>
		</tr>

</tbody></table>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt 0pt 0pt 28pt;text-indent:-28pt;"><b>Three Months Ended January 31, 2023 and 2022</b></p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt 0pt 0pt 28pt;text-indent:-28pt;"><i>Net Sales</i></p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Consolidated net sales for the first quarter of fiscal year 2023 increased 26.6% to $18.3 million, compared to net sales of $14.4 million for the same period last year. We experienced an increase in net sales in both our enterprise and specialty markets, including the wireless carrier market, in the first quarter of fiscal year 2023, compared to the same period last year.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Net sales to customers in the United States increased 20.0% and net sales to customers outside of the United States increased 61.4% in the first quarter of fiscal year 2023, compared to the same period last year. We can experience fluctuations in sales from quarter to quarter in the various markets (both industries and geographies) in which we operate for various reasons.</p>

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

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

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="text-align: left; width: 100%">
<div class="hf-row">
<div class="hf-cell TOCLink" style="display: inline-block; text-align: left;"><a href="#toc" style="font-weight: initial; font-style: initial; font-variant: initial; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">Table of Contents</a></div>
</div>
</div>
</div>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">We believe the increase in net sales was positively impacted by increased product demand and increased production throughput during the first quarter of fiscal year 2023, compared to the same period last year, as well as improved product pricing which began to take effect for new orders received during the latter half of fiscal year 2022. Our sales order backlog/forward load exceeded $11.0 million at the end of the first quarter of fiscal year 2023&#x2014;continuing to be higher than typical levels while down from more than $12.0 million at the end of the fourth quarter of fiscal year 2022. We continued to see some positive indicators in our markets during the first quarter of fiscal year 2023, and at this time we believe we will benefit from this trend during fiscal year 2023; however, such expectations could be negatively impacted by macroeconomic and geopolitical risks, and any further direct and indirect impacts of the COVID-19 pandemic.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt 0pt 0pt 28pt;text-indent:-28pt;"><i>Gross Profit</i></p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Our gross profit was $6.5 million in the first quarter of fiscal year 2023, an increase of 61.2% compared to gross profit of $4.0 million in the first quarter of fiscal year 2022. Gross profit margin, or gross profit as a percentage of net sales, increased to 35.7% in the first quarter of fiscal year 2023 compared to 28.0% in the first quarter of fiscal year 2022.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Our gross profit margins tend to be higher when we achieve higher net sales levels due to our operating leverage as certain fixed manufacturing costs are spread over higher sales. This operating leverage, which is beneficial at higher sales levels, positively impacted our gross profit margin during the first quarter of fiscal year 2023 when compared to the same period last year. Our gross profit margin percentages are also heavily dependent upon product mix on a quarterly basis and may vary based on changes in product mix.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt 0pt 0pt 28pt;text-indent:-28pt;"><i>Selling, General, and Administrative Expenses</i></p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">SG&amp;A expenses increased to $5.5 million during the first quarter of fiscal year 2023, compared to $4.8 million for the same period last year. SG&amp;A expenses as a percentage of net sales were 29.8% in the first quarter of fiscal year 2023, compared to 33.1% in the first quarter of fiscal year 2022.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The increase in SG&amp;A expenses during the first quarter of fiscal year 2023 compared to the same period last year was primarily the result of increases in employee and contracted sales personnel related costs totaling $461,000. Included in employee and contracted sales personnel related costs are employee incentives and commissions which increased due to increased net sales and the improved financial results during the first quarter of fiscal year 2023.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Also contributing to the increase in SG&amp;A expenses during the first quarter of fiscal year 2023 were increases in shipping costs totaling $96,000 due to the increase in net sales and the increase in the costs charged by shippers, when compared to the same period last year.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><i>Royalty Income (Expense), Net</i></p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">We recognized royalty expense, net of royalty income, totaling $7,000 during the first quarter of fiscal years 2023 and 2022. Royalty expense and/or income may fluctuate based on sales of related licensed products and estimates of amounts for non-licensed product sales, if any.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><i>Amortization of Intangible Assets</i></p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">We recognized $13,000 of amortization expense, associated with intangible assets, during the first quarter of fiscal year 2023, compared to $12,000 during the first quarter of fiscal year 2022.</p>

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

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

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="text-align: left; width: 100%">
<div class="hf-row">
<div class="hf-cell TOCLink" style="display: inline-block; text-align: left;"><a href="#toc" style="font-weight: initial; font-style: initial; font-variant: initial; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">Table of Contents</a></div>
</div>
</div>
</div>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt 0pt 0pt 28pt;text-indent:-28pt;"><i>Other Income (Expense), Net</i></p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">We recognized other expense, net in the first quarter of fiscal year 2023 of $203,000, compared to $170,000 in the first quarter of fiscal year 2022. Other expense, net is comprised primarily of interest expense together with other miscellaneous items.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt 0pt 0pt 28pt;text-indent:-28pt;"><i>Income (Loss) Before Income Taxes </i></p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">We reported income before income taxes of $842,000 for the first quarter of fiscal year 2023, compared to a loss before income taxes of $923,000 for the first quarter of fiscal year 2022. The improvement was primarily due to the increase in gross profit of $2.5 million, partially offset by the increase in SG&amp;A expenses of $675,000.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><i>Income Tax Expense (Benefit)</i></p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Income tax expense totaled $32,000 in the first quarter of fiscal year 2023, compared to $13,000 in the first quarter of fiscal year 2022. Our effective tax rate was 3.9% for the first quarter of fiscal year 2023 and negative 1.4% for the first quarter of fiscal year 2022.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Fluctuations in our effective tax rates are primarily due to permanent differences in U.S. GAAP and tax accounting for various tax deductions and benefits, but can also be significantly different from the statutory tax rate when income or loss before taxes is at a level such that permanent differences in U.S. GAAP and tax accounting treatment have a disproportional impact on the projected effective tax rate.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">We previously established a valuation allowance against all of our net deferred tax assets. As a result of establishing a full valuation allowance against our net deferred tax assets, if we generate sufficient taxable income in subsequent periods to realize a portion or all of our net deferred tax assets, our effective income tax rate could be unusually low due to the tax benefit attributable to the necessary decrease in our valuation allowance. Further, if we generate losses before taxes in subsequent periods, our effective income tax rate could also be unusually low as any increase in our net deferred tax asset from such a net operating loss for tax purposes would be offset by a corresponding increase to our valuation allowance against our net deferred tax assets.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">If we generate sufficient income before taxes in subsequent periods such that U.S. GAAP would permit us to conclude that the removal of any valuation allowance against our net deferred tax asset is appropriate, then during the period in which such determination is made, we will recognize the non-cash benefit of such removal of the valuation allowance in income tax expense on our consolidated statement of operations, which will increase net income and will also increase the net deferred tax asset on our consolidated balance sheet. If we do not generate sufficient income before taxes in subsequent periods such that U.S. GAAP would permit us to conclude that the reduction or removal of any valuation allowance against our net deferred tax asset is appropriate, then no such non-cash benefit would be realized. There can be no assurance regarding any future realization of the benefit by us of all or part of our net deferred tax assets. As of October 31, 2022, the valuation allowance against our total gross deferred tax assets totaled $4.4 million.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt 0pt 0pt 28pt;text-indent:-28pt;"><i>Net Income (Loss)</i></p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Net income for the first quarter of fiscal year 2023 was $810,000 compared to a net loss of $936,000 for the first quarter of fiscal year 2022. This improvement was primarily due to the increase in income before income taxes of $1.8 million.</p>

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

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

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="text-align: left; width: 100%">
<div class="hf-row">
<div class="hf-cell TOCLink" style="display: inline-block; text-align: left;"><a href="#toc" style="font-weight: initial; font-style: initial; font-variant: initial; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">Table of Contents</a></div>
</div>
</div>
</div>

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

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

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Total assets increased $1.9 million, or 4.8%, to $42.5 million at January 31, 2023, from $40.6 million at October 31, 2022. This increase was primarily due to a $2.8 million increase in inventories, partially offset by a $1.1 million decrease in trade accounts receivable, net. Inventories increased largely as the result of the timing of certain raw material purchases, increases in work in process levels related to pending shipments, and the increase in finished goods inventory resulting from higher replenishment rates of stock inventory. Trade accounts receivable, net decreased due primarily to the decrease in net sales in the first quarter of fiscal year 2023 when compared to the fourth quarter of fiscal year 2022.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Total liabilities increased $1.1 million, or 6.0%, to $19.5 million at January 31, 2023, from $18.4&#xa0;million at October&#xa0;31, 2022. The increase in total liabilities was primarily due to net borrowings on our Revolver totaling $823,000 and an increase in accounts payable and accrued expenses totaling $204,000 primarily resulting from the timing of raw material purchases and certain vendor payments.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Total shareholders&#x2019; equity at January 31, 2023 increased $844,000 in the first quarter of fiscal year 2023. The increase resulted from net income of $810,000 and share-based compensation, net of $34,000.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt 0pt 0pt 28pt;text-indent:-28pt;"><b>Liquidity and Capital Resources</b></p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Our primary capital needs have been to fund working capital requirements through payments on our Revolver. Our primary source of capital for these purposes has been existing cash, cash provided by operations and borrowings under our Revolver (see &#x201c;Credit Facilities&#x201d; below).</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Our cash totaled $186,000 as of January 31, 2023, a decrease of $30,000 compared to $216,000 as of October 31, 2022. The decrease in cash for the three months ended January 31, 2023 primarily resulted from net cash used in operating activities of $630,000 and capital expenditures totaling $105,000, partially offset by net cash provided by financing activities of $707,000.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">On January 31, 2023, we had working capital of $25.4 million compared to $23.7 million on October&#xa0;31, 2022. The ratio of current assets to current liabilities as of January 31, 2023 was 4.3 to 1.0 compared to 4.2 to 1.0 as of October 31, 2022. The increase in working capital and in the current ratio was primarily due to the increase in inventories of $2.8 million, partially offset by the $1.1 million decrease in trade accounts receivable, net.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">As of January 31, 2023 and October 31, 2022, we had outstanding loan balances under our Revolver totaling $6.8 million and $6.0 million, respectively. As of January 31, 2023 and October 31, 2022, we had other outstanding bank loan balances, excluding our Revolver, totaling $4.4 million and $4.5 million, respectively.</p>

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

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

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Net cash used in operating activities was $630,000 in the first quarter of fiscal year 2023, compared to $1.9 million for the first quarter of fiscal year 2022. Net cash used in operating activities during the first quarter of fiscal year 2023 primarily resulted from an increase in inventories totaling $2.8 million, partially offset by certain adjustments to reconcile net income of $810,000 to net cash used in operating activities including depreciation and amortization of $248,000 and share-based compensation expense of $135,000. Additionally, the cash flow impact of decreases in trade accounts receivable, net of $1.1 million and increases in accounts payable and accrued expenses of $120,000 further contributed to offset net cash used in operating activities.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Net cash used in operating activities during the first quarter of fiscal year 2022 primarily resulted from an increase in inventories totaling $1.6 million, partially offset by certain adjustments to reconcile a net loss of $936,000 to net cash used in operating activities including depreciation and amortization of $286,000 and share-based compensation expense of $124,000. Additionally, the cash flow impact of increases in accounts payable and accrued expenses, including accrued compensation and payroll taxes, of $572,000 further contributed to offset net cash used in operating activities.</p>

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

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

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="text-align: left; width: 100%">
<div class="hf-row">
<div class="hf-cell TOCLink" style="display: inline-block; text-align: left;"><a href="#toc" style="font-weight: initial; font-style: initial; font-variant: initial; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">Table of Contents</a></div>
</div>
</div>
</div>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Net cash used in investing activities totaled $106,000 in the first quarter of fiscal year 2023, compared to $81,000 in the first quarter of fiscal year 2022. Net cash used in investing activities during the first quarter of fiscal years 2023 and 2022 resulted primarily from purchases of property and equipment and deposits for the purchase of property and equipment.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Net cash provided by financing activities totaled $707,000 for the first quarter of fiscal year 2023, compared to $2.0 million in the first quarter of fiscal year 2022. Net cash provided by financing activities in the first quarter of fiscal year 2023 resulted primarily from net proceeds on our revolving line of credit totaling $823,000, partially offset by principal payments on long-term debt totaling $83,000. Net cash provided by financing activities in the first quarter of fiscal year 2022 resulted primarily from net proceeds on our revolving line of credit totaling $2.1 million, partially offset by principal payments on long-term debt totaling $80,000.</p>

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

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

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">We have credit facilities consisting of a real estate term loan, as amended and restated (the &#x201c;Virginia Real Estate Loan&#x201d;), a supplemental real estate term loan, as amended and restated (the &#x201c;North Carolina Real Estate Loan&#x201d;) and a Revolving Credit Master Promissory Note and related agreements (collectively, the &#x201c;Revolver&#x201d;).</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Both the Virginia Real Estate Loan and the North Carolina Real Estate Loan are with Northeast Bank, have a fixed interest rate of 3.95% and are secured by a first lien deed of trust on the Company&#x2019;s real property.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The Revolver with North Mill Capital LLC (doing business as SLR Business Credit, &#x201c;SLR&#x201d;) provides us with one or more advances in an amount up to: (a) 85% of the aggregate outstanding amount of eligible accounts (the &#x201c;eligible accounts loan value&#x201d;); plus (b) the lowest of (i) an amount up to 35% of the aggregate value of eligible inventory, (ii) $5.0 million, and (iii) an amount not to exceed 100% of the then outstanding eligible accounts loan value; minus (c) $1.15 million.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The maximum aggregate principal amount subject to the Revolver is $18.0 million. Interest accrues on the daily balance at the per annum rate of 1.5% above the Prime Rate in effect from time to time, but not less than 4.75% (the &#x201c;Applicable Rate&#x201d;). In the event of a default, interest may become 6.0% above the Applicable Rate. As of January 31, 2023, the Revolver accrued interest at the prime lending rate plus 1.5% (resulting in a 9.0% rate at January 31, 2023). The termination date of the Revolver is July 24, 2025 and the loan may be extended in one year periods subject to the agreement of SLR.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The Revolver is secured by all of the following assets: properties, rights and interests in property of the Company whether now owned or existing, or hereafter acquired or arising, and wherever located; all accounts, equipment, commercial tort claims, general intangibles, chattel paper, inventory, negotiable collateral, investment property, financial assets, letter-of-credit rights, supporting obligations, deposit accounts, money or assets of the Company, which hereafter come into the possession, custody, or control of SLR; all proceeds and products, whether tangible or intangible, of any of the foregoing, including proceeds of insurance covering any or all of the foregoing; any and all tangible or intangible property resulting from the sale, lease, license or other disposition of any of the foregoing, or any portion thereof or interest therein, and all proceeds thereof; and any other assets of the Company which may be subject to a lien in favor of SLR as security for the obligations under the Loan Agreement.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">As of January 31, 2023, we had $6.8 million of outstanding borrowings on our Revolver and $4.8 million in available credit.</p>

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

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

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="text-align: left; width: 100%">
<div class="hf-row">
<div class="TOCLink hf-cell" style="width: 100%; display: inline-block; text-align: left;"><a href="#toc" style="font-weight: initial; font-style: initial; font-variant: initial; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">Table of Contents</a></div>
</div>
</div>
</div>

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

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

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">We did not have any material commitments for capital expenditures as of January 31, 2023. During our 2023 fiscal year budgeting process, we included an estimate for capital expenditures of $1.0 million for the fiscal year. We anticipate these expenditures, to the extent made, will be funded out of our working capital, cash provided by operations or borrowings under our Revolver, as appropriate. Capital expenditures are reviewed and approved based on a variety of factors including, but not limited to, current cash flow considerations, the expected return on investment, project priorities, impact on current or future product offerings, availability of personnel necessary to implement and begin using acquired equipment, and economic conditions in general. Additionally, total capital expenditures exceeding $1.0 million per fiscal year would require approval from our lender.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Corporate acquisitions and other strategic investments, if any, are considered outside of our annual capital expenditure budgeting process.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><i>Future Cash Flow Considerations</i></p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">We believe that our future cash flow from operations, our cash on hand and our existing credit facilities will be adequate to fund our operations for at least the next twelve months.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">From time to time, we are involved in various claims, legal actions and regulatory reviews arising in the ordinary course of business. In the opinion of management, the ultimate disposition of these matters will not have a material adverse effect on our financial position, results of operations or liquidity.</p>

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

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

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">We typically expect net sales to be relatively lower in the first half of each fiscal year and relatively higher in the second half of each fiscal year, and excluding other volatility, we would normally expect 48% of total net sales to occur during the first half of a fiscal year and 52% of total net sales to occur during the second half of a fiscal year. We believe this historical seasonality pattern is generally indicative of an overall trend and reflective of the buying patterns and budgetary cycles of our customers. However, this pattern may be altered during any quarter or year by the quarterly and annual volatility of orders received for the wireless carrier market, the timing of larger projects, timing of orders from larger customers, other economic factors impacting our industry or impacting the industries of our customers and end-users, and macroeconomic conditions. While we believe seasonality may be a factor that impacts our quarterly net sales results, particularly when excluding the volatility of sales in the wireless carrier market, we are not able to reliably predict net sales based on seasonality because these other factors can also, and often do, substantially impact our net sales patterns during the year.</p>

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

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

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Our discussion and analysis of financial condition and results of operations is based on the condensed consolidated financial statements and accompanying condensed notes that have been prepared in accordance with U.S. generally accepted accounting principles (&#x201c;U.S. GAAP&#x201d;) for interim financial information and the instructions to Form 10&#x2011;Q and Regulation S&#x2011;X. The preparation of these condensed consolidated financial statements requires management to make estimates and assumptions that affect the reported amounts of assets and liabilities and the disclosure of contingent assets and liabilities at the date of the condensed consolidated financial statements and the reported amounts of revenues and expenses during the reporting period. Actual results could differ from those estimates.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Note 1 to the consolidated financial statements filed with our Annual Report on Form 10-K for fiscal year 2022 provides a summary of our significant accounting policies. Those significant accounting policies detailed in our fiscal year 2022 Form 10-K did not change during the period from November 1, 2022 through January 31, 2023.</p>

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

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

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="text-align: left; width: 100%">
<div class="hf-row">
<div class="TOCLink hf-cell" style="width: 100%; display: inline-block; text-align: left;"><a href="#toc" style="font-weight: initial; font-style: initial; font-variant: initial; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">Table of Contents</a></div>
</div>
</div>
</div>

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

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

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">There are no new accounting standards issued, but not yet adopted by us, which are expected to be applicable to our financial position, operating results or financial statement disclosures.</p>

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

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

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="text-align: left; width: 100%">
<div class="hf-row">
<div class="hf-cell TOCLink" style="display: inline-block; text-align: left;"><a href="#toc" style="font-weight: initial; font-style: initial; font-variant: initial; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">Table of Contents</a></div>
</div>
</div>
</div>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b><a id="item4" title="item4" href="#"></a>Item 4. Controls and Procedures</b></p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The Company maintains disclosure controls and procedures (as defined in Rules 13a-15(e) and 15d-15(e) under the Securities Exchange Act of 1934, as amended (the &#x201c;Exchange Act&#x201d;)) that are designed to be effective in providing reasonable assurance that information required to be disclosed in reports under the Exchange Act are recorded, processed and summarized and reported within the time periods specified in the rules and forms of the Securities and Exchange Commission (the &#x201c;SEC&#x201d;), and that such information is accumulated and communicated to management to allow for timely decisions regarding required disclosure.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Our management evaluated, with the participation of our Chief Executive Officer (principal executive officer) and Chief Financial Officer (principal financial officer), the effectiveness of the Company&#x2019;s disclosure controls and procedures as of January 31, 2023. Based on this evaluation process, the Chief Executive Officer and Chief Financial Officer have concluded that the Company&#x2019;s disclosure controls and procedures were effective as of January 31, 2023, and that there were no changes in the Company&#x2019;s internal control over financial reporting that occurred during the last fiscal quarter ended January 31, 2023 that have materially affected, or are reasonably likely to materially affect, the Company&#x2019;s internal control over financial reporting.</p>

<div>&#xa0;</div>

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

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

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="display: table; width: 100%;">
<div class="hf-row" style="display: table-row;">
<div class="hf-cell TOCLink" style="text-align: left; margin: 0pt; display: table-cell;"><a href="#toc" style="font-weight: initial; font-style: initial; font-variant: initial; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">Table of Contents</a></div>
</div>

<div class="hf-row" style="display: table-row;">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center; font-weight: bold; margin: 0pt; display: table-cell;">PART II. OTHER INFORMATION</div>
</div>
</div>
</div>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b><a id="partii" title="partii" href="#"></a><a id="item5" title="item5" href="#"></a>Item 5. Other Information</b></p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">At the end of December 2022, an office building and its contents at the Company&#x2019;s Asheville facilities sustained water damage resulting from a burst pipe in the sprinkler system, likely due to extreme low temperatures in the area during the days leading up to the event. This office building is separate from the Company&#x2019;s manufacturing building which houses its manufacturing operations and certain offices located at the same location. The Company has insurance coverage for the office building, its contents and certain business expenses to cover the losses incurred. There was no significant impact to the Company&#x2019;s operations, and the overall impact on the Company&#x2019;s financial position, results of operations and cash flows is not expected to be material since the proceeds of the insurance are expected to approximate the expenses incurred to repair or replace the assets damaged or destroyed. During the first quarter of fiscal year 2023, the Company recorded a loss on property and equipment totaling $8,000 and incurred expenses for building stabilization and cleaning, removal of damaged items, and other miscellaneous and related activities totaling $81,000. An offsetting amount of insurance proceeds receivable totaling $76,000, net of applicable deductibles, was recorded as of January 31, 2023.</p>

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

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

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="display: table; width: 100%;">
<div class="hf-row" style="display: table-row;">
<div class="hf-cell TOCLink" style="text-align: left; margin: 0pt; display: table-cell;"><a href="#toc" style="font-weight: initial; font-style: initial; font-variant: initial; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">Table of Contents</a></div>
</div>

<div class="hf-row" style="display: table-row;">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center; font-weight: bold; margin: 0pt; display: table-cell;">PART II. OTHER INFORMATION</div>
</div>
</div>
</div>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b><a id="item6" title="item6" href="#"></a>Item 6. Exhibits </b></p>

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

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

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

		<tbody><tr>
			<td style="vertical-align: top; width: 8.3%; text-align: center;"><b><span style="text-decoration: underline; ">Exhibit No.</span></b></td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:51.4%;"><b><span style="text-decoration: underline; ">Description</span></b></td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:51.4%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">3.1</p>
			</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:51.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><a href="http://www.sec.gov/Archives/edgar/data/1000230/000091664101501441/dex1.txt" style="-sec-extract:exhibit;">Articles of Amendment filed November 5, 2001 to the Amended and Restated Articles of Incorporation, as amended through November 5, 2001 (incorporated herein by reference to Exhibit 1 to the Company&#x2019;s Form 8-A12G filed with the Commission on November 5, 2001).</a></p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 8.3%; text-align: center;">&#xa0;</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:51.4%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 8.3%; text-align: center;">3.2</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align: bottom; width: 51.4%; text-align: justify;"><a href="http://www.sec.gov/Archives/edgar/data/1000230/000112726402000123/occ_def.txt" style="-sec-extract:exhibit;">Articles of Amendment filed July 5, 2002 to the Amended and Restated Articles of Incorporation, as amended through July 5, 2002 (incorporated herein by reference to Appendix A to the Company&#x2019;s definitive proxy statement on Form 14A filed July 5, 2002).</a></td>
		</tr>
		<tr>
			<td style="vertical-align: top; width: 8.3%; text-align: center;">&#xa0;</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:51.4%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">3.3</p>
			</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:51.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><a href="http://www.sec.gov/Archives/edgar/data/1000230/000119312511245791/d228112dex32.htm" style="-sec-extract:exhibit;">Amended and Restated Bylaws of Optical Cable Corporation effective October 15, 2010 (incorporated herein by reference to Exhibit 3.2 to the Company&#x2019;s Quarterly Report on Form 10-Q for the third quarter ended July&#xa0;31, 2011).</a></p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:51.4%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">3.4</p>
			</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:51.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><a href="ex_483937.htm" style="-sec-extract:exhibit;">Amended and Restated Bylaws of Optical Cable Corporation effective March 9, 2023. FILED HEREWITH.</a></p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:51.4%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">4.1</p>
			</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:51.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><a href="http://www.sec.gov/Archives/edgar/data/1000230/000119312504154716/dex41.htm" style="-sec-extract:exhibit;">Form of certificate representing Common Stock (incorporated herein by reference to Exhibit 4.1 to the Company&#x2019;s Quarterly Report on Form 10-Q for the third quarter ended July 31, 2004 (file number 0-27022)).</a></p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:51.4%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">4.2</p>
			</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:51.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><a href="http://www.sec.gov/Archives/edgar/data/1000230/000119312512386554/d406982dex42.htm" style="-sec-extract:exhibit;">Form of certificate representing Common Stock (incorporated herein by reference to Exhibit 4.2 to the Company&#x2019;s Quarterly Report on Form 10-Q for the third quarter ended July 31, 2012).</a></p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:51.4%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">4.3</p>
			</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:51.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><a href="http://www.sec.gov/Archives/edgar/data/1000230/000119312509014313/dex417.htm" style="-sec-extract:exhibit;">Corrected Credit Line Deed of Trust dated June 4, 2008 between Optical Cable Corporation as Grantor, LeClairRyan as Trustee and Northeast Bank, successor in interest to Pinnacle Bank (successor by merger with Bank of North Carolina, successor by merger with Valley Bank) as Beneficiary (incorporated herein by reference to Exhibit 4.17 of the Company&#x2019;s Annual Report on Form 10-K for the period ended October 31, 2008 filed January 29, 2009).</a></p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:51.4%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">4.4</p>
			</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:51.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><a href="http://www.sec.gov/Archives/edgar/data/1000230/000119312509014313/dex418.htm" style="-sec-extract:exhibit;">Corrected Deed of Trust, Security Agreement and Fixtures Filing dated May 30, 2008 by and between Superior Modular Products Incorporated as Grantor, LeClairRyan as Trustee and Northeast Bank, successor in interest to Pinnacle Bank (successor by merger with Bank of North Carolina, successor by merger with Valley Bank) as Beneficiary (incorporated herein by reference to Exhibit 4.18 of the Company&#x2019;s Annual Report on Form 10-K for the period ended October 31, 2008 filed January 29, 2009).</a></p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:51.4%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">4.5</p>
			</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:51.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><a href="http://www.sec.gov/Archives/edgar/data/1000230/000143774916030596/ex4-3.htm" style="-sec-extract:exhibit;">Term Loan A Note in the amount of $1,816,609 by Optical Cable Corporation dated April 26, 2016, for the benefit of Northeast Bank as of July 15, 2021, as successor in interest to Pinnacle Bank (successor by merger with Bank of North Carolina) (incorporated herein by reference to Exhibit 4.3 to the Company&#x2019;s Current Report on Form 8-K/A filed May 3, 2016).</a></p>
			</td>
		</tr>

</tbody></table>

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

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

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="display: table; width: 100%;">
<div class="hf-row" style="display: table-row;">
<div class="hf-cell TOCLink" style="text-align: left; margin: 0pt; display: table-cell;"><a href="#toc" style="font-weight: initial; font-style: initial; font-variant: initial; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">Table of Contents</a></div>
</div>

<div class="hf-row" style="display: table-row;">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center; font-weight: bold; margin: 0pt; display: table-cell;">PART II. OTHER INFORMATION</div>
</div>
</div>
</div>

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

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

		<tbody><tr>
			<td style="vertical-align:top;width:8.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">4.6</p>
			</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:51.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><a href="http://www.sec.gov/Archives/edgar/data/1000230/000143774916030596/ex4-4.htm" style="-sec-extract:exhibit;">Term Loan B Note in the amount of $5,271,411 by Optical Cable Corporation dated April 26, 2016, for the benefit of Northeast Bank as of July 15, 2021, as successor in interest to Pinnacle Bank (successor by merger with Bank of North Carolina) (incorporated herein by reference to Exhibit 4.4 to the Company&#x2019;s Current Report on Form 8-K/A filed May 3, 2016).</a></p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:51.4%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">4.7</p>
			</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:51.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><a href="http://www.sec.gov/Archives/edgar/data/1000230/000143774916030596/ex4-5.htm" style="-sec-extract:exhibit;">Modification of Credit Line Deed of Trust dated April 26, 2016 by and between Optical Cable Corporation (successor by merger to Superior Modular Products Incorporated) as Grantor, Andrew B. Agee (in substitution of LeClairRyan) as Trustee and Northeast Bank, successor in interest to Pinnacle Bank (successor by merger with Bank of North Carolina) as Beneficiary, modifying that certain Corrected Credit Line Deed of Trust dated June 4, 2008 (incorporated herein by reference to Exhibit 4.5 to the Company&#x2019;s Current Report on Form 8-K/A filed May 3, 2016).</a></p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:51.4%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">4.8</p>
			</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:51.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><a href="http://www.sec.gov/Archives/edgar/data/1000230/000143774916030596/ex4-6.htm" style="-sec-extract:exhibit;">Modification of Deed of Trust, Security Agreement, and Assignment of Leases and Rents dated April 26, 2016 by and between Optical Cable Corporation (successor by merger to Superior Modular Products Incorporated) as Grantor, Andrew B. Agee (in substitution of LeClairRyan) as Trustee and Northeast Bank, successor in interest to Pinnacle Bank (successor by merger with Bank of North Carolina) as Beneficiary, modifying that certain Corrected Deed of Trust, Security Agreement and Assignment of Leases and Rents dated May 30, 2008 (incorporated herein by reference to Exhibit 4.6 to the Company&#x2019;s Current Report on Form 8-K/A filed May 3, 2016).</a></p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:51.4%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">4.9</p>
			</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:51.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><a href="http://www.sec.gov/Archives/edgar/data/1000230/000143774918011550/ex_115700.htm" style="-sec-extract:exhibit;">Second Modification of Credit Line Deed of Trust dated May 2, 2018 by and between Optical Cable Corporation (successor by merger to Superior Modular Products Incorporated) as Grantor, W. Todd Ross (in substitution of LeClairRyan) as Trustee and Northeast Bank, successor in interest to Pinnacle Bank (successor by merger with Bank of North Carolina) as Beneficiary, modifying that certain Modification of Credit Line Deed of Trust dated April 26, 2016, which previously modified that certain Corrected Credit Line Deed of Trust dated June 4, 2008 (incorporated herein by reference to Exhibit 4.20 to the Company&#x2019;s Quarterly Report on Form 10-Q for the second quarter ended April 30, 2018).</a></p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:51.4%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">4.10</p>
			</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:51.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><a href="http://www.sec.gov/Archives/edgar/data/1000230/000143774918011550/ex_115701.htm" style="-sec-extract:exhibit;">Second Modification of Deed of Trust, Security Agreement, and Assignment of Leases and Rents dated May 2, 2018 by and between Optical Cable Corporation (successor by merger to Superior Modular Products Incorporated) as Grantor, W. Todd Ross (in substitution of LeClairRyan) as Trustee and Northeast Bank, successor in interest to Pinnacle Bank (successor by merger with Bank of North Carolina) as Beneficiary, modifying that certain Modification of Deed of Trust, Security Agreement, and Assignment of Leases and Rents dated April 26, 2016, which previously modified that certain Corrected Deed of Trust, Security Agreement and Assignment of Leases and Rents dated May 30, 2008 (incorporated herein by reference to Exhibit 4.21 to the Company&#x2019;s Quarterly Report on Form 10-Q for the second quarter ended April 30, 2018).</a></p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:51.4%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">4.11</p>
			</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:51.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><a href="http://www.sec.gov/Archives/edgar/data/1000230/000143774920016038/ex_195947.htm" style="-sec-extract:exhibit;">Loan and Security Agreement dated July 24, 2020 by and among Optical Cable Corporation along with its subsidiaries Applied Optical Systems, Inc., and Centric Solutions LLC, and North Mill Capital LLC (now doing business as SLR Business Credit) (incorporated by reference to Exhibit 4.1 to the Company&#x2019;s Current Report on Form 8-K dated July 30, 2020).</a></p>
			</td>
		</tr>

</tbody></table>

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

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

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="display: table; width: 100%;">
<div class="hf-row" style="display: table-row;">
<div class="hf-cell TOCLink" style="text-align: left; margin: 0pt; display: table-cell;"><a href="#toc" style="font-weight: initial; font-style: initial; font-variant: initial; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">Table of Contents</a></div>
</div>

<div class="hf-row" style="display: table-row;">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center; font-weight: bold; margin: 0pt; display: table-cell;">PART II. OTHER INFORMATION</div>
</div>
</div>
</div>

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

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

		<tbody><tr>
			<td style="vertical-align:top;width:8.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">4.12</p>
			</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:51.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><a href="http://www.sec.gov/Archives/edgar/data/1000230/000143774920016038/ex_195948.htm" style="-sec-extract:exhibit;">Revolving Credit Master Promissory Note dated July 24, 2020 by Optical Cable Corporation along with its subsidiaries Applied Optical Systems, Inc., and Centric Solutions LLC in favor of North Mill Capital LLC (now doing business as SLR Business Credit) (incorporated by reference to Exhibit 4.2 to the Company&#x2019;s Current Report on Form 8-K dated July 30, 2020).</a></p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:51.4%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">4.13</p>
			</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:51.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><a href="http://www.sec.gov/Archives/edgar/data/1000230/000143774920016038/ex_195949.htm" style="-sec-extract:exhibit;">Payoff Letter from Pinnacle Bank to North Mill Capital LLC (now doing business as SLR Business Credit) and Optical Cable Corporation (incorporated by reference to Exhibit 4.3 to the Company&#x2019;s Current Report on Form 8-K dated July 30, 2020).</a></p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:51.4%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">4.14</p>
			</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:51.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><a href="http://www.sec.gov/Archives/edgar/data/1000230/000143774921025513/ex_303347.htm" style="-sec-extract:exhibit;">Amended and Restated Stockholder Protection Rights Agreement, dated as of November 2, 2021, between Optical Cable Corporation and American Stock Transfer &amp; Trust Company, LLC, as rights agent (incorporated herein by reference to Exhibit 4.1 to the Company&#x2019;s Form 8-A12G filed with the Commission on November 5, 2021).</a></p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:51.4%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">4.15</p>
			</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:51.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><a href="http://www.sec.gov/Archives/edgar/data/1000230/000143774922016819/ex_393082.htm" style="-sec-extract:exhibit;">Modification Agreement dated as of July 5, 2022, by and between North Mill Capital LLC (now doing business as SLR Business Credit) and Optical Cable Corporation along with its subsidiaries Applied Optical Systems, Inc., and Centric Solutions LLC (incorporated by reference to Exhibit 4.1 to the Company&#x2019;s Current Report on Form 8-K dated July 7, 2022).</a></p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:51.4%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">10.1*</p>
			</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:51.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><a href="http://www.sec.gov/Archives/edgar/data/1000230/000143774917004362/occ20170223_def14a.htm" style="-sec-extract:exhibit;">Optical Cable Corporation 2017 Stock Incentive Plan (incorporated by reference to Appendix A to the Company&#x2019;s definitive proxy statement on Form 14A filed March 13, 2017).</a></p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:52.3%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">10.2*</p>
			</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:52.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><a href="http://www.sec.gov/Archives/edgar/data/1000230/000119312511099762/dex102.htm" style="-sec-extract:exhibit;">Amended and Restated Employment Agreement by and between Optical Cable Corporation and Neil D. Wilkin, Jr. effective April 11, 2011 (incorporated herein by reference to Exhibit 10.2 of the Company&#x2019;s Current Report on Form 8-K filed April 15, 2011).</a></p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:52.3%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">10.3*</p>
			</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:52.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><a href="http://www.sec.gov/Archives/edgar/data/1000230/000119312513109588/d499109dex1016.htm" style="-sec-extract:exhibit;">Amendment, effective December 18, 2012, to Amended and Restated Employment Agreement by and between Optical Cable Corporation and Neil D. Wilkin, Jr. effective April 11, 2011 (incorporated herein by reference to Exhibit 10.16 of the Company&#x2019;s Quarterly Report on Form 10-Q for the period ended January 31, 2013 filed March 15, 2013).</a></p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:52.3%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">10.4*</p>
			</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:52.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><a href="http://www.sec.gov/Archives/edgar/data/1000230/000100023014000010/wilkinocc2ndamendtoamendan.htm" style="-sec-extract:exhibit;">Second Amendment, effective March 14, 2014, to Amended and Restated Employment Agreement by and between Optical Cable Corporation and Neil D. Wilkin, Jr. effective April 11, 2011, as amended December 18, 2012 (incorporated herein by reference to Exhibit 10.19 of the Company&#x2019;s Quarterly Report on Form 10-Q for the period ended January 31, 2014 filed March 17, 2014).</a></p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:52.3%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">10.5*</p>
			</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:52.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><a href="http://www.sec.gov/Archives/edgar/data/1000230/000119312511099762/dex101.htm" style="-sec-extract:exhibit;">Amended and Restated Employment Agreement by and between Optical Cable Corporation and Tracy G. Smith effective April 11, 2011 (incorporated herein by reference to Exhibit 10.1 of the Company&#x2019;s Current Report on Form 8-K filed April 15, 2011).</a></p>
			</td>
		</tr>

</tbody></table>

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

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

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="display: table; width: 100%;">
<div class="hf-row" style="display: table-row;">
<div class="hf-cell TOCLink" style="text-align: left; margin: 0pt; display: table-cell;"><a href="#toc" style="font-weight: initial; font-style: initial; font-variant: initial; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">Table of Contents</a></div>
</div>

<div class="hf-row" style="display: table-row;">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center; font-weight: bold; margin: 0pt; display: table-cell;">PART II. OTHER INFORMATION</div>
</div>
</div>
</div>

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

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

		<tbody><tr>
			<td style="vertical-align:top;width:8.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">10.6*</p>
			</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:52.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><a href="http://www.sec.gov/Archives/edgar/data/1000230/000119312513109588/d499109dex1018.htm" style="-sec-extract:exhibit;">Amendment, effective December 18, 2012, to Amended and Restated Employment Agreement by and between Optical Cable Corporation and Tracy G. Smith effective April 11, 2011 (incorporated herein by reference to Exhibit 10.18 of the Company&#x2019;s Quarterly Report on Form 10-Q for the period ended January 31, 2013 filed March 15, 2013).</a></p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:52.3%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">10.7*</p>
			</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:52.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><a href="http://www.sec.gov/Archives/edgar/data/1000230/000100023014000010/smithocc2ndamendtoamendand.htm" style="-sec-extract:exhibit;">Second Amendment, effective March 14, 2014, to Amended and Restated Employment Agreement by and between Optical Cable Corporation and Tracy G. Smith effective April 11, 2011, as amended December 18, 2012 (incorporated herein by reference to Exhibit 10.22 of the Company&#x2019;s Quarterly Report on Form 10-Q for the period ended January 31, 2014 filed March 17, 2014).</a></p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:52.3%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">10.8*</p>
			</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:52.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><a href="http://www.sec.gov/Archives/edgar/data/1000230/000143774917011177/ex10-21.htm" style="-sec-extract:exhibit;">Form of vesting award agreement for non-employee Board members under the Optical Cable Corporation 2017 Stock Incentive Plan (incorporated herein by reference to Exhibit 10.21 of the Company&#x2019;s Quarterly Report on Form 10-Q for the period ended April 30, 2017 filed June 13, 2017).</a></p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:52.3%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">10.9*</p>
			</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:52.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><a href="http://www.sec.gov/Archives/edgar/data/1000230/000143774921028951/ex_315670.htm" style="-sec-extract:exhibit;">Form of operational performance (Company financial performance measure) vesting award agreement under the Optical Cable Corporation 2017 Stock Incentive Plan (incorporated herein by reference to Exhibit 10.15 of the Company&#x2019;s Annual Report on Form 10-K for the period ended October 31, 2021 filed December 20, 2021). <span style="text-decoration: underline; ">&#xa0;</span></a></p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:52.3%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">10.10*</p>
			</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:52.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><a href="http://www.sec.gov/Archives/edgar/data/1000230/000143774922022175/ex_419998.htm" style="-sec-extract:exhibit;">First Amendment to the Optical Cable Corporation 2017 Stock Incentive Plan effective March 29, 2022 (incorporated herein by reference to Exhibit 10.16 of the Company&#x2019;s Quarterly Report on Form 10-Q for the period ended July 31, 2022 filed September 12, 2022).</a></p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:52.3%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">11.1</p>
			</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:52.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><a href="#notenine" style="-sec-extract:exhibit;">Statement regarding computation of per share earnings (incorporated by reference to note 9 of the Condensed Notes to Condensed Consolidated Financial Statements contained herein).</a></p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:52.3%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">31.1</p>
			</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:52.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><a href="ex_483933.htm" style="-sec-extract:exhibit;">Certification of the Company&#x2019;s Chief Executive Officer pursuant to Section 302 of the Sarbanes-Oxley Act of 2002. FILED HEREWITH.</a></p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:52.3%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">31.2</p>
			</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:52.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><a href="ex_483934.htm" style="-sec-extract:exhibit;">Certification of the Company&#x2019;s Chief Financial Officer pursuant to Section 302 of the Sarbanes-Oxley Act of 2002. FILED HEREWITH.</a></p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:52.3%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">32.1</p>
			</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:52.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><a href="ex_483935.htm" style="-sec-extract:exhibit;">Certification of the Company&#x2019;s Chief Executive Officer pursuant to 18 U.S.C. Section 1350 as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002. FURNISHED HEREWITH.</a></p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:52.3%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">32.2</p>
			</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:52.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><a href="ex_483936.htm" style="-sec-extract:exhibit;">Certification of the Company&#x2019;s Chief Financial Officer pursuant to 18 U.S.C. Section 1350 as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002. FURNISHED HEREWITH.</a></p>
			</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:52.3%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="vertical-align:top;width:8.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">101</p>
			</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:52.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The following materials from the Company&#x2019;s Quarterly Report on Form 10-Q for the quarter ended January 31, 2023, formatted in iXBRL (Inline eXtensible Business Reporting Language): (i) Condensed Consolidated Balance Sheets at January 31, 2023 and October 31, 2022, (ii) Condensed Consolidated Statements of Operations for the three months ended January 31, 2023 and 2022, (iii) Condensed Consolidated Statements of Shareholders&#x2019;&#xa0;Equity for the three months ended January 31, 2023 and 2022, (iv) Condensed Consolidated Statements of Cash Flows for the three months ended January 31, 2023 and 2022, and (v) Condensed Notes to Condensed Consolidated Financial Statements. FILED HEREWITH.</p>
			</td>
		</tr>

</tbody></table>

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

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

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="display: table; width: 100%;">
<div class="hf-row" style="display: table-row;">
<div class="hf-cell TOCLink" style="text-align: left; margin: 0pt; display: table-cell;"><a href="#toc" style="font-weight: initial; font-style: initial; font-variant: initial; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">Table of Contents</a></div>
</div>

<div class="hf-row" style="display: table-row;">
<div class="hf-cell" style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center; font-weight: bold; margin: 0pt; display: table-cell;">PART II. OTHER INFORMATION</div>
</div>
</div>
</div>

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

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

		<tbody><tr>
			<td style="vertical-align:top;width:8.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">104</p>
			</td>
			<td style="vertical-align:bottom;width:1%;">&#xa0;</td>
			<td style="vertical-align:bottom;width:52.3%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Cover Page Interactive Data File (formatted as Inline XBRL and contained in Exhibit 101).</p>
			</td>
		</tr>

</tbody></table>

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

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

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

		<tbody><tr>
			<td style="vertical-align:top;width:1%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">*</p>
			</td>
			<td style="vertical-align:top;width:auto;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Management contract or compensatory plan or agreement.</p>
			</td>
		</tr>

</tbody></table>

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

<div>&#xa0;</div>

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

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

<hr style="PAGE-BREAK-AFTER: always; border: none; width: 100%; height: 2px; color: #000000; background-color: #000000" />
<div class="PGHDR" style="text-align: left; width: 100%">
<div class="hf-row">
<div class="hf-cell TOCLink" style="display: inline-block; text-align: left;"><a href="#toc" style="font-weight: initial; font-style: initial; font-variant: initial; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">Table of Contents</a></div>
</div>
</div>
</div>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><a id="sigs" title="sigs" href="#"></a>SIGNATURES</b></p>

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

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

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

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

		<tbody><tr>
			<td style="width: 60%;">&#xa0;</td>
			<td style="width: 40%;"><b>OPTICAL CABLE CORPORATION</b></td>
		</tr>
		<tr>
			<td style="width: 60%;">&#xa0;</td>
			<td style="width: 40%;">(Registrant)</td>
		</tr>
		<tr>
			<td style="width: 60%;">&#xa0;</td>
			<td style="width: 40%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="width: 60%;">&#xa0;</td>
			<td style="width: 40%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="width: 60%;">Date: March 14, 2023</td>
			<td style="width: 40%; border-bottom: 1px solid rgb(0, 0, 0);">/s/ Neil D. Wilkin, Jr.</td>
		</tr>
		<tr>
			<td style="width: 60%;">&#xa0;</td>
			<td style="width: 40%;">Neil D. Wilkin, Jr.</td>
		</tr>
		<tr>
			<td style="width: 60%;">&#xa0;</td>
			<td style="width: 40%;">Chairman of the Board of Directors,</td>
		</tr>
		<tr>
			<td style="width: 60%;">&#xa0;</td>
			<td style="width: 40%;">President and Chief Executive Officer</td>
		</tr>
		<tr>
			<td style="width: 60%;">&#xa0;</td>
			<td style="width: 40%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="width: 60%;">&#xa0;</td>
			<td style="width: 40%;">&#xa0;</td>
		</tr>
		<tr>
			<td style="width: 60%;">Date: March 14, 2023</td>
			<td style="width: 40%; border-bottom: 1px solid rgb(0, 0, 0);">/s/ Tracy G. Smith</td>
		</tr>
		<tr>
			<td style="width: 60%;">&#xa0;</td>
			<td style="width: 40%;">Tracy G. Smith</td>
		</tr>
		<tr>
			<td style="width: 60%;">&#xa0;</td>
			<td style="width: 40%;">Senior Vice President and Chief Financial</td>
		</tr>
		<tr>
			<td style="width: 60%;">&#xa0;</td>
			<td style="width: 40%;">Officer</td>
		</tr>

</tbody></table>

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

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


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

	<!-- Generated by ThunderDome Portal - 3/7/2023 7:24:06 PM --><meta charset="utf-8"><meta name="format-detection" content="telephone=no">
</head>
<body style="font-size: 10pt; font-family: &quot;Times New Roman&quot;; padding: 0in 0.1in; cursor: auto;">
<p style="margin: 0px 0pt; text-align: right; font-size: 10pt; font-family: &quot;Times New Roman&quot;;"><font style="font-family: 'Times New Roman', Times, serif; font-size: 10pt"><b>Exhibit 3.4</b></font></p>

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

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

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b>AMENDED AND RESTATED </b><br>
<b>BYLAWS </b><br>
<b>OF </b><br>
<b>OPTICAL CABLE CORPORATION </b><br>
<b>(In effect as of March 9, 2023)</b></p>

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

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

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

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

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

		<tr>
			<td colspan="3" style="vertical-align:bottom;width:101%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b>TABLE OF CONTENTS</b></p>
			</td>
		</tr>
		<tr>
			<td colspan="3" style="vertical-align:middle;width:101%;">&nbsp;</td>
		</tr>
		<tr>
			<td colspan="3" style="vertical-align:middle;width:101%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b>ARTICLE I</b></p>
			</td>
		</tr>
		<tr>
			<td colspan="3" style="vertical-align:middle;width:101%;">&nbsp;</td>
		</tr>
		<tr>
			<td colspan="3" style="vertical-align:middle;width:101%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b>OFFICES</b></p>
			</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">1.1</p>
			</td>
			<td style="vertical-align:bottom;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Registered Office</p>
			</td>
			<td style="vertical-align:bottom;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">1</p>
			</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">1.2</p>
			</td>
			<td style="vertical-align:bottom;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Offices</p>
			</td>
			<td style="vertical-align:bottom;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">1</p>
			</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="vertical-align:middle;width:8.4%;">&nbsp;</td>
			<td style="vertical-align:bottom;width:85.9%;">&nbsp;</td>
			<td style="vertical-align:bottom;width:6.7%;">&nbsp;</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td colspan="3" style="vertical-align:middle;width:101%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b>ARTICLE II</b></p>
			</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td colspan="3" style="vertical-align:middle;width:101%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b>MEETINGS OF SHAREHOLDERS</b></p>
			</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">2.1</p>
			</td>
			<td style="vertical-align:bottom;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Location, Organization and Order of Business</p>
			</td>
			<td style="vertical-align:bottom;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">1</p>
			</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">2.2</p>
			</td>
			<td style="vertical-align:bottom;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Annual Meetings</p>
			</td>
			<td style="vertical-align:bottom;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">1</p>
			</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">2.3</p>
			</td>
			<td style="vertical-align:bottom;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Special Meetings</p>
			</td>
			<td style="vertical-align:bottom;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">1</p>
			</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">2.4</p>
			</td>
			<td style="vertical-align:middle;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Notice of Meeting</p>
			</td>
			<td style="vertical-align:middle;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">2</p>
			</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">2.5</p>
			</td>
			<td style="vertical-align:middle;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Shareholders&#8217;&nbsp;Records</p>
			</td>
			<td style="vertical-align:middle;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">2</p>
			</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">2.6</p>
			</td>
			<td style="vertical-align:middle;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Quorum; Meeting Adjournment; Presence by Remote Means</p>
			</td>
			<td style="vertical-align:middle;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">2</p>
			</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">2.7</p>
			</td>
			<td style="vertical-align:middle;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Organization</p>
			</td>
			<td style="vertical-align:middle;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">3</p>
			</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">2.8</p>
			</td>
			<td style="vertical-align:middle;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Notice of Shareholder Business and Nominations</p>
			</td>
			<td style="vertical-align:middle;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">3</p>
			</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">2.9</p>
			</td>
			<td style="vertical-align:middle;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Voting Thresholds; Proxies</p>
			</td>
			<td style="vertical-align:middle;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">7</p>
			</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">2.10</p>
			</td>
			<td style="vertical-align:middle;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Number of Votes Per Share</p>
			</td>
			<td style="vertical-align:middle;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">7</p>
			</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">2.11</p>
			</td>
			<td style="vertical-align:middle;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Action by Written Consent of Shareholders; Electronic Consent; Notice of Action</p>
			</td>
			<td style="vertical-align:middle;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">7</p>
			</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">2.12</p>
			</td>
			<td style="vertical-align:middle;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Inspectors</p>
			</td>
			<td style="vertical-align:middle;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">7</p>
			</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td style="vertical-align:middle;width:8.4%;">&nbsp;</td>
			<td style="vertical-align:middle;width:85.9%;">&nbsp;</td>
			<td style="vertical-align:middle;width:6.7%;">&nbsp;</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td colspan="3" style="vertical-align:middle;width:101%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b>ARTICLE III</b></p>
			</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td colspan="3" style="vertical-align:middle;width:101%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b>DIRECTORS</b></p>
			</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">3.1</p>
			</td>
			<td style="vertical-align:middle;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Authorized Directors</p>
			</td>
			<td style="vertical-align:middle;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">8</p>
			</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">3.2</p>
			</td>
			<td style="vertical-align:middle;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Vacancies</p>
			</td>
			<td style="vertical-align:middle;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">8</p>
			</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">3.3</p>
			</td>
			<td style="vertical-align:middle;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Board Authority</p>
			</td>
			<td style="vertical-align:middle;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">8</p>
			</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">3.4</p>
			</td>
			<td style="vertical-align:middle;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Location of Meetings</p>
			</td>
			<td style="vertical-align:middle;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">8</p>
			</td>
		</tr>

</table>

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

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

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

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

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

		<tr style="background-color: rgb(204, 238, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">3.5</p>
			</td>
			<td style="vertical-align:middle;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">First Meeting</p>
			</td>
			<td style="vertical-align:middle;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">8</p>
			</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">3.6</p>
			</td>
			<td style="vertical-align:middle;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Regular Meetings</p>
			</td>
			<td style="vertical-align:middle;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">8</p>
			</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">3.7</p>
			</td>
			<td style="vertical-align:middle;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Special Meetings</p>
			</td>
			<td style="vertical-align:middle;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">8</p>
			</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">3.8</p>
			</td>
			<td style="vertical-align:middle;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Quorum</p>
			</td>
			<td style="vertical-align:middle;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">8</p>
			</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">3.9</p>
			</td>
			<td style="vertical-align:middle;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Action Without a Meeting</p>
			</td>
			<td style="vertical-align:middle;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">8</p>
			</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">3.10</p>
			</td>
			<td style="vertical-align:middle;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Telephonic Meetings</p>
			</td>
			<td style="vertical-align:middle;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">8</p>
			</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">3.11</p>
			</td>
			<td style="vertical-align:middle;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Committees</p>
			</td>
			<td style="vertical-align:middle;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">9</p>
			</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">3.12</p>
			</td>
			<td style="vertical-align:middle;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Minutes of Meetings</p>
			</td>
			<td style="vertical-align:middle;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">9</p>
			</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">3.13</p>
			</td>
			<td style="vertical-align:middle;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Compensation of Directors</p>
			</td>
			<td style="vertical-align:middle;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">9</p>
			</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">3.14</p>
			</td>
			<td style="vertical-align:middle;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Removal of Directors; Resignations</p>
			</td>
			<td style="vertical-align:middle;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">9</p>
			</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">3.15</p>
			</td>
			<td style="vertical-align:middle;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Notice</p>
			</td>
			<td style="vertical-align:middle;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">9</p>
			</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td style="vertical-align:middle;width:8.4%;">&nbsp;</td>
			<td style="vertical-align:middle;width:85.9%;">&nbsp;</td>
			<td style="vertical-align:middle;width:6.7%;">&nbsp;</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td colspan="3" style="vertical-align:middle;width:101%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b>ARTICLE IV</b></p>
			</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td colspan="3" style="vertical-align:middle;width:101%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b>COMMITTEES OF DIRECTORS</b></p>
			</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">4.1</p>
			</td>
			<td style="vertical-align:middle;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Committees</p>
			</td>
			<td style="vertical-align:middle;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">9</p>
			</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">4.2</p>
			</td>
			<td style="vertical-align:middle;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Authority of Committees</p>
			</td>
			<td style="vertical-align:middle;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">10</p>
			</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">4.3</p>
			</td>
			<td style="vertical-align:middle;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Audit Committee</p>
			</td>
			<td style="vertical-align:middle;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">10</p>
			</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">4.4</p>
			</td>
			<td style="vertical-align:middle;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Compensation Committee</p>
			</td>
			<td style="vertical-align:middle;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">10</p>
			</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">4.5</p>
			</td>
			<td style="vertical-align:middle;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Nominating and Governance Committee</p>
			</td>
			<td style="vertical-align:middle;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">10</p>
			</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">4.6</p>
			</td>
			<td style="vertical-align:middle;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Committee Meetings; Miscellaneous</p>
			</td>
			<td style="vertical-align:middle;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">10</p>
			</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="vertical-align:middle;width:8.4%;">&nbsp;</td>
			<td style="vertical-align:middle;width:85.9%;">&nbsp;</td>
			<td style="vertical-align:middle;width:6.7%;">&nbsp;</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td colspan="3" style="vertical-align:middle;width:101%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b>ARTICLE V</b></p>
			</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td colspan="3" style="vertical-align:middle;width:101%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b>OFFICERS</b></p>
			</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">5.1</p>
			</td>
			<td style="vertical-align:middle;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Officers</p>
			</td>
			<td style="vertical-align:middle;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">10</p>
			</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">5.2</p>
			</td>
			<td style="vertical-align:middle;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Election; Term</p>
			</td>
			<td style="vertical-align:middle;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">10</p>
			</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">5.3</p>
			</td>
			<td style="vertical-align:middle;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Removal of Officers</p>
			</td>
			<td style="vertical-align:middle;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">10</p>
			</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">5.4</p>
			</td>
			<td style="vertical-align:middle;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Duties of Chairman</p>
			</td>
			<td style="vertical-align:middle;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">10</p>
			</td>
		</tr>

</table>

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

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

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

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

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

		<tr style="background-color: rgb(204, 238, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">5.5</p>
			</td>
			<td style="vertical-align:middle;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Duties of the President</p>
			</td>
			<td style="vertical-align:middle;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">10</p>
			</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">5.6</p>
			</td>
			<td style="vertical-align:middle;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Duties of the Secretary</p>
			</td>
			<td style="vertical-align:middle;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">11</p>
			</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">5.7</p>
			</td>
			<td style="vertical-align:middle;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Duties of the Chief Financial Officer and/or the Treasurer</p>
			</td>
			<td style="vertical-align:middle;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">11</p>
			</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">5.8</p>
			</td>
			<td style="vertical-align:middle;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Duties of Other Officers</p>
			</td>
			<td style="vertical-align:middle;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">11</p>
			</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">5.9</p>
			</td>
			<td style="vertical-align:middle;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Voting Securities of Other Corporations</p>
			</td>
			<td style="vertical-align:middle;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">11</p>
			</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">5.10</p>
			</td>
			<td style="vertical-align:middle;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Bonds</p>
			</td>
			<td style="vertical-align:middle;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">11</p>
			</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="vertical-align:middle;width:8.4%;">&nbsp;</td>
			<td style="vertical-align:middle;width:85.9%;">&nbsp;</td>
			<td style="vertical-align:middle;width:6.7%;">&nbsp;</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td colspan="3" style="vertical-align:middle;width:101%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b>ARTICLE VI</b></p>
			</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td colspan="3" style="vertical-align:middle;width:101%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b>SHARE CERTIFICATES</b></p>
			</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">6.1</p>
			</td>
			<td style="vertical-align:middle;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Form</p>
			</td>
			<td style="vertical-align:middle;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">11</p>
			</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">6.2</p>
			</td>
			<td style="vertical-align:middle;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Transfer</p>
			</td>
			<td style="vertical-align:middle;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">12</p>
			</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">6.3</p>
			</td>
			<td style="vertical-align:middle;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Restrictions on Transfer</p>
			</td>
			<td style="vertical-align:middle;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">12</p>
			</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">6.4</p>
			</td>
			<td style="vertical-align:middle;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Lost or Destroyed Share Certificates</p>
			</td>
			<td style="vertical-align:middle;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">12</p>
			</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">6.5</p>
			</td>
			<td style="vertical-align:middle;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Registered Shareholders</p>
			</td>
			<td style="vertical-align:middle;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">12</p>
			</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="vertical-align:middle;width:8.4%;">&nbsp;</td>
			<td style="vertical-align:middle;width:85.9%;">&nbsp;</td>
			<td style="vertical-align:middle;width:6.7%;">&nbsp;</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td colspan="3" style="vertical-align:middle;width:101%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b>ARTICLE VII</b></p>
			</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td colspan="3" style="vertical-align:middle;width:101%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b>MISCELLANEOUS PROVISIONS</b></p>
			</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">7.1</p>
			</td>
			<td style="vertical-align:middle;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Corporate Seal</p>
			</td>
			<td style="vertical-align:middle;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">12</p>
			</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">7.2</p>
			</td>
			<td style="vertical-align:middle;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Fiscal Year</p>
			</td>
			<td style="vertical-align:middle;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">12</p>
			</td>
		</tr>
		<tr style="background-color: rgb(255, 255, 255);">
			<td style="vertical-align:middle;width:8.4%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">7.3</p>
			</td>
			<td style="vertical-align:middle;width:85.9%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">Amendments</p>
			</td>
			<td style="vertical-align:middle;width:6.7%;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:right;margin:0pt;">12</p>
			</td>
		</tr>
		<tr style="background-color: rgb(204, 238, 255);">
			<td style="vertical-align:middle;width:8.4%;">&nbsp;</td>
			<td style="vertical-align:middle;width:85.9%;">&nbsp;</td>
			<td style="vertical-align:middle;width:6.7%;">&nbsp;</td>
		</tr>

</table>

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

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

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

<div contenteditable="false" data-applyto="p" data-auto-pgnum="start" data-displaynum="1" data-fontname="Times New Roman" data-fontsize="10pt" data-numstyle="a" data-prefix="Page " data-startnum="1" data-suffix=" of 12" data-textalign="right">&nbsp;</div>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;">Amended and Restated Bylaws of Optical Cable Corp.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b>OPTICAL CABLE CORPORATION AMENDED AND RESTATED BYLAWS</b></p>

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

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

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

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 0pt;text-indent:72pt;"><b>1.1&nbsp;&nbsp;&nbsp;&nbsp;Registered Office</b>. The registered office of Optical Cable Corporation (the &#8220;<b><i>Corporation</i></b>&#8221;) shall be in Roanoke,&nbsp;Virginia.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 0pt;text-indent:72pt;"><b>1.2&nbsp;&nbsp;&nbsp;&nbsp;Offices</b>. The Corporation may also have offices at such other places both within and without the Commonwealth of Virginia as the board of directors of the Corporation (the &#8220;<b><i>Board</i></b>&#8221;) may from time to time determine or the business of the Corporation may require.</p>

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

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: center;"><b>ARTICLE II</b><br>
<b>MEETINGS OF SHAREHOLDERS</b></p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 0pt;text-indent:72pt;"><b>2.1&nbsp;&nbsp;&nbsp;&nbsp;Location, Organization and Order of Business</b>. All meetings of the shareholders shall be held at such place, if any, either within or without the Commonwealth of Virginia, as shall be designated from time to time by the Board and stated in the notice of the meeting; provided that the Board may, in its sole discretion, determine that the meeting shall not be held at any place, but may instead be held solely by means of remote communication as authorized by the Virginia Stock Corporation Act (the &#8220;<b><i>VSCA</i></b>&#8221;). The Chairman or, in the Chairman's absence, the President shall serve as chairman at all meetings of the shareholders. In the absence of both of the foregoing officers or if both of them decline to serve, the Board of Directors may appoint any person to act as chairman. The Secretary or, in the Secretary's absence, an Assistant Secretary shall act as secretary at all meetings of the shareholders. In the event that neither the Secretary nor an Assistant Secretary is present, the chairman of the meeting may appoint any person to act as secretary of the meeting. The chairman of the meeting shall have the authority to establish the order of business, to make such rules and regulations, to establish such procedures and to take such steps as the chairman of the meeting may deem necessary or desirable for the proper conduct of each meeting of the shareholders, including, without limitation, the authority to make the agenda, adjourn and/or reconvene meetings, and to establish procedures for (i) dismissing of business not properly presented, (ii) maintaining of order and safety, (iii) placing limitations on the time allotted to questions or comments on the affairs of the Corporation, (iv) placing restrictions on attendance at a meeting by persons or classes of persons who are not shareholders or their proxies, (v) restricting entry to a meeting after the time prescribed for the commencement thereof and (vi) commencing, conducting and closing voting on any matter.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 0pt;text-indent:72pt;"><b>2.2&nbsp;&nbsp;&nbsp;&nbsp;Annual Meetings</b>. Annual meetings of shareholders shall be held on such date and at such time as shall be designated from time to time by the Board and stated in the notice of the meeting, at which they shall elect a Board, and transact such other business as may properly be brought before the meeting.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 0pt;text-indent:72pt;"><b>2.3&nbsp;&nbsp;&nbsp;&nbsp;Special Meetings</b>.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;text-indent:94pt;">(a) Special meetings of the shareholders, for any purpose or purposes, unless otherwise prescribed by statute or by the Articles of Incorporation, may only be called by: (i) the President, (ii) the President or Secretary at the request in writing of a majority of the Board, or (iii) by the Secretary at the request in writing of shareholders owning at least 50% in amount of the entire capital stock of the Corporation issued and outstanding and entitled to vote at the meeting. Such request shall be delivered to the Secretary at the Corporation&#8217;s principal executive offices and signed by each shareholder, or a duly authorized agent of such shareholder, requesting the special meeting and shall set forth: (i) a brief description of each matter of business desired to be brought before the special meeting; (ii) the reasons for conducting such business at the special meeting; (iii) the text of any proposal or business to be considered at the special meeting (including the text of any resolutions proposed to be considered and in the event that such business includes a proposal to amend these Bylaws, the language of the proposed amendment); and (iv) the information required in Section 2.8(b) of these Bylaws, as applicable.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 0pt;text-indent:94pt;">(b)&nbsp;&nbsp;&nbsp;&nbsp;Business transacted at any special meeting of shareholders shall be limited to the purpose or purposes stated in the notice; provided, however, that in the case of a special meeting requested by the shareholders, nothing herein shall prohibit the Board from submitting additional matters to the shareholders at any such special meeting.</p>

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

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

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

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 0pt;text-indent:94pt;">(c)&nbsp;&nbsp;&nbsp;&nbsp;A special meeting requested by shareholders shall be held on such date and at such time as may be fixed by the Board; provided, however, that the date of any such special meeting shall be not more than 90 days after the request to call the special meeting is received by the Secretary. Notwithstanding the foregoing, a special meeting requested by shareholders shall not be held if: (i) the Board has called or calls for an annual or special meeting of the shareholders to be held within 90 days after the Secretary receives the request for the special meeting and the Board determines in good faith that the business of such meeting includes (among any other matters properly brought before the meeting) the business specified in the request; (ii) the stated business to be brought before the special meeting is not a proper subject for shareholder action under applicable law; (iii) an identical or substantially similar item (a &#8220;<b><i>Similar Item</i></b>&#8221;) was presented at any meeting of shareholders held within 120 days prior to the receipt by the Secretary of the request for the special meeting (and, for purposes of this Section 2.3(c)(iii), the election of directors shall be deemed a Similar Item with respect to all items of business involving the election or removal of directors); or (iv) the special meeting request was made in a manner that involved a violation of Regulation 14A under the Securities Exchange Act of 1934, as amended and the rules and regulations promulgated thereunder (the &#8220;<b><i>Exchange Act</i></b>&#8221;).</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 0pt;text-indent:94pt;">(d)&nbsp;&nbsp;&nbsp;&nbsp;A shareholder may revoke a request for a special meeting at any time by written revocation delivered to the Secretary at the Corporation&#8217;s principal executive offices, and, if following such revocation, there are unrevoked requests from shareholders holding in the aggregate less than the requisite percentage of the entire capital stock of the Corporation entitling the shareholders to request the calling of a special meeting, the Board, in its discretion, may cancel the special meeting.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 0pt;text-indent:72pt;"><b>2.4&nbsp;&nbsp;&nbsp;&nbsp;Notice of Meeting</b>. Whenever shareholders are required or permitted to take any action at a meeting, a timely notice in writing or by electronic transmission, in the manner provided in the VSCA, of the meeting, which shall state the place, if any, date and time of the meeting, the means of remote communications, if any, by which shareholders and proxyholders may be deemed to be present in person and vote at such meeting, the record date for determining the shareholders entitled to vote at the meeting, if such date is different from the record date for determining shareholders entitled to notice of the meeting, and, in the case of a special meeting, the purposes for which the meeting is called, shall be mailed to or transmitted electronically by the Secretary to each shareholder of record entitled to vote thereat as of the record date for determining the shareholders entitled to notice of the meeting. Unless otherwise provided by law, the Articles of Incorporation or these Bylaws, the notice of any meeting shall be given not less than 10 nor more than 60 days before the date of the meeting to each shareholder entitled to vote at such meeting.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 0pt;text-indent:72pt;"><b>2.5&nbsp;&nbsp;&nbsp;&nbsp;Shareholders</b>&#8217;&nbsp;<b>Records</b>. The Corporation shall prepare, no later than the 10<sup style="vertical-align:top;line-height:120%;font-size:pt">th</sup> day before every meeting of shareholders, a complete list of the shareholders entitled to vote at the meeting, arranged in alphabetical order, and showing the address (but not the electronic address or other electronic contact information) of each shareholder and the number of shares registered in the name of each shareholder. Such list shall be open to the examination by any shareholder, for any purpose germane to the meeting for a period of 10 days ending on the day before the meeting date: (i)&nbsp;on a reasonably accessible electronic network;&nbsp;<u>provided</u>&nbsp;that the information required to gain access to such list is provided with the notice of the meeting; or (ii) during ordinary business hours&nbsp;at the Corporation&#8217;s principal place of business. In the event that the Corporation determines to make the list available on an electronic network, the Corporation may take reasonable steps to ensure that such information is available only to shareholders of the Corporation. Except as provided by applicable law, the stock ledger of the Corporation shall be the only evidence as to those persons who are the shareholders entitled to examine the stock ledger and the list of shareholders or to vote in person or by proxy at any meeting of shareholders.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 0pt;text-indent:72pt;"><b>2.6&nbsp;&nbsp;&nbsp;&nbsp;Quorum; Meeting Adjournment; Presence by Remote Means</b>.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 0pt;text-indent:94pt;">(a)<i>&nbsp;&nbsp;&nbsp;&nbsp;Quorum. </i>The holders of a majority of the stock issued and outstanding and entitled to vote thereat, present in person or represented by proxy, shall constitute a quorum at all meetings of the shareholders for the transaction of business except as otherwise provided by statute or by the Articles of Incorporation. If, however, such quorum shall not be present or represented at any meeting of the shareholders, the chair of the meeting or the shareholders entitled to vote thereat, present in person or represented by proxy, shall have power, by the affirmative vote of a majority in voting power thereof, to adjourn the meeting from time to time, in the manner provided in Section 2.6(b) below, until a quorum shall be present or represented. A quorum, once established, shall not be broken by the subsequent withdrawal of enough votes to leave less than a quorum. At any such adjourned meeting at which there is a quorum, any business may be transacted that might have been transacted at the meeting originally called.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 0pt;text-indent:94pt;">(b)<i>&nbsp;&nbsp;&nbsp;&nbsp;Meeting Adjournment. </i>The chair of the meeting shall have the power to adjourn the meeting from time to time for any reasonable purpose. Any meeting of the shareholders may be adjourned from time to time to reconvene at the same or some other place, if any, and notice need not be given of any such adjourned meeting if the time, place, if any, thereof and the means of remote communication, if any, are provided in accordance with applicable law. At the adjourned meeting, the Corporation may transact any business that might have been transacted at the original meeting. If the adjournment is for more than 30 days, a notice of the adjourned meeting shall be given to each shareholder of record entitled to vote at the meeting. If after the adjournment a new record date is fixed for shareholders entitled to vote at the adjourned meeting, the Board shall fix a new record date for notice of the adjourned meeting and shall give notice of the adjourned meeting to each shareholder of record entitled to vote at the adjourned meeting as of the record date fixed for notice of the adjourned meeting.</p>

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

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

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

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 0pt;text-indent:94pt;">(c)<i>&nbsp;&nbsp;&nbsp;&nbsp;Presence by Remote Means</i>. If authorized by the Board in its sole discretion, and subject to such guidelines and procedures as the Board may adopt, shareholders and proxyholders not physically present at a meeting of shareholders may, by means of remote communication:</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 0pt;text-indent:116pt;">(i)&nbsp;&nbsp;&nbsp;&nbsp;participate in a meeting of shareholders; and</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 0pt;text-indent:116pt;">(ii)&nbsp;&nbsp;&nbsp;&nbsp;be deemed present in person and vote at a meeting of shareholders whether such meeting is to be held at a designated place or solely by means of remote communication;&nbsp;<u>provided</u>&nbsp;that (i)&nbsp;the Corporation shall implement reasonable measures to verify that each person deemed present and permitted to vote at the meeting by means of remote communication is a shareholder or proxyholder, (ii)&nbsp;the Corporation shall implement reasonable measures to provide such shareholders and proxyholders a reasonable opportunity to participate in the meeting and to vote on matters submitted to the shareholders, including an opportunity to read or hear the proceedings of the meeting substantially concurrently with such proceedings, and (iii)&nbsp;if any shareholder or proxyholder votes or takes other action at the meeting by means of remote communication, a record of such vote or other action shall be maintained by the Corporation.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 0pt;text-indent:72pt;"><b>2.7&nbsp;&nbsp;&nbsp;&nbsp;Organization</b>. The Chair of the Board shall act as chair of all meetings of the shareholders. The Board may designate any other director or officer of the Corporation to act as chair of any meeting in the absence of the Chair of the Board, and the Board may further provide for determining who shall act as chair of any shareholders meeting in the absence of the Chair of the Board and such designee. The Board may adopt such rules and regulations for the conduct of any meeting of the shareholders as it shall deem appropriate. Except to the extent inconsistent with such rules and regulations as adopted by the Board, the chair of the meeting shall have the authority to adopt and enforce such rules and regulations for the conduct of any meeting of shareholders and the safety of those in attendance as, in the judgment of the chair, are necessary, appropriate or convenient for the conduct of the meeting. Rules and regulations for the conduct of meetings of shareholders, whether adopted by the Board or by the chair of the meeting, may include without limitation, establishing: (i) an agenda or order of business for the meeting; (ii) rules and procedures for maintaining order at the meeting and the safety of those present; (iii) limitations on attendance at or participation in the meeting to shareholders entitled to vote at the meeting, their duly authorized and constituted proxies and such other persons as the chair of the meeting shall permit; (iv) restrictions on entry to the meeting after the time fixed for the commencement thereof; (v) limitations on the time allotted for consideration of each agenda item and for questions and comments by participants; and (vi) regulations for the opening and closing of the polls for balloting and matters which are to be voted on by ballot (if any). Subject to any rules and regulations adopted by the Board, the chair of the meeting may convene any meeting of shareholders and, for any reason, from time to time, adjourn and or recess any meeting of shareholders pursuant to Section 2.6(b) of these Bylaws.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 0pt;text-indent:72pt;"><b>2.8&nbsp;&nbsp;&nbsp;&nbsp;Notice of Shareholder Business and Nominations</b>.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 0pt;text-indent:94pt;">(a)<i>&nbsp;&nbsp;&nbsp;&nbsp;Annual Meetings of Shareholders</i>.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 0pt;text-indent:118pt;">(1)&nbsp;&nbsp;&nbsp;&nbsp;Nominations for the election of directors and the proposal of other business at an annual meeting may be made only: (i) by or at the direction of the Board or any committee thereof; or (ii) by a shareholder of the Corporation who was a shareholder of record at the time the notice provided for in this Section 2.8 is delivered to the Secretary, who is entitled to vote at the meeting and who complies with this Section 2.8. For the avoidance of doubt, the foregoing clause (ii) shall be the exclusive means for a shareholder to make a director nomination or propose other business at an annual meeting of shareholders (other than a proposal included in the Corporation definitive proxy statement for the applicable shareholders meeting pursuant to and in compliance with Rule 14a-8 under the Securities Exchange Act of 1934 (the &#8220;<b><i>Exchange Act</i></b>&#8221;)).</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 0pt;text-indent:118pt;">(2)&nbsp;&nbsp;&nbsp;&nbsp;For nominations or other business to be properly brought before an annual meeting by a shareholder pursuant to Section 2.8(a)(1)(ii), the shareholder must have given timely and proper notice thereof in writing to the Secretary and any such proposed business other than the nominations of persons for election to the Board must constitute a proper matter for shareholder action. To be timely, a shareholder's notice must be given, either by personal delivery to the Secretary or an Assistant Secretary at the principal office of the Corporation or by registered or certified United States mail, with postage thereon prepaid, addressed to the Secretary at the principal office of the Corporation. Any such notice must be received not less than 120 days nor more than 150 days before the date of the anniversary of the immediately preceding annual meeting of shareholders; provided, however, that if the date of the annual meeting is more than 30 days before or more than 60 days after such anniversary date, notice by the shareholder to be timely must be so delivered, or mailed and received, not later than the 120th day prior to such annual meeting or, if later, the 10th day following the day on which public disclosure of the date of such annual meeting was first made.</p>

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

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

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

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 0pt;text-indent:118pt;">(3)&nbsp;&nbsp;&nbsp;&nbsp; In no event shall the public announcement of an adjournment or postponement of an annual meeting commence a new time period (or extend any time period) for the giving of a shareholder&#8217;s notice as described above. The number of persons a shareholder may nominate for election as a director at the annual meeting (or in the case of a shareholder giving the notice on behalf of a beneficial owner, the number of persons a shareholder may nominate for election as a director at the annual meeting on behalf of such beneficial owner) shall not exceed the number of directors to be elected at such annual meeting.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 0pt;text-indent:118pt;">(4)&nbsp;&nbsp;&nbsp;&nbsp;A shareholder&#8217;s notice to the Secretary with respect to business proposed to be brought before a meeting shall set forth as to each matter the shareholder proposes to bring before the meeting (i) a brief description of the business desired to be brought before the meeting, including the complete text of any resolutions to be presented at the meeting (including the text of any proposed amendment to these Bylaws in the event that such business includes a proposal to amend these Bylaws), and the reasons for conducting such business at the meeting, (ii) the name and address, as they appear on the Corporation&#8217;s stock ledger, of such shareholder proposing such business, the name and address of any beneficial owner on whose behalf the proposal is being made and the name and address of any of their respective affiliates or associates or other parties with whom such shareholder or such beneficial owner is acting in concert (each, an &#8220;<b><i>Associated Person</i></b>&#8221;), (iii) a representation that such shareholder is a shareholder of record and intends to appear in person or by proxy at such meeting to bring the business before the meeting specified in the notice, (iv) the class and number of shares of stock of the Corporation owned (directly or indirectly) beneficially and of record by the shareholder and any beneficial owner on whose behalf the proposal is being made, and any Associated Person, (v) a description of any agreement, arrangement or understanding (including any derivative or short positions, profit interests, options, warrants, convertible securities, stock appreciation or similar rights, hedging transactions, and borrowed or loaned shares) that has been entered into as of the date of the shareholder&#8217;s notice by, or on behalf of, such shareholder and such beneficial owner, and any Associated Person, whether or not such instrument or right shall be subject to settlement in an underlying class of stock of the Corporation (collectively, &#8220;<b><i>Derivative Instruments</i></b>&#8221;), the effect or intent of which is to mitigate loss to, manage risk or benefit of share price changes for, or increase or decrease the voting power of, such shareholder or such beneficial owner, or any Associated Person, with respect to shares of stock of the Corporation, or relates to the acquisition or disposition of any shares of stock of the Corporation, (vi) any proxy (other than a revocable proxy given in response to a solicitation statement filed pursuant to, and in accordance with, Section 14(a) of the Exchange Act), voting trust, voting agreement or similar contract, arrangement, agreement or understanding pursuant to which the shareholder and any beneficial owner on whose behalf the proposal is being made, or any Associated Person, has a right to vote or direct the voting of any of the Corporation&#8217;s securities, (vii) any rights to dividends on the shares of the Corporation owned beneficially by the shareholder and any Associated Person that are separated or separable from the underlying shares of the Corporation, (viii) any proportionate interest in shares of the Corporation or any Derivative Instruments held, directly or indirectly, by a general or limited partnership or limited liability corporation or similar entity in which the shareholder, the beneficial owner or any Associated Person is a general partner or, directly or indirectly, beneficially owns an interest in a general partner, is the manager, managing member or, directly or indirectly, beneficially owns an interest in the manager or managing member of a limited liability corporation or similar entity, (ix) any performance-related fees (other than an asset-based fee) that the shareholder, the beneficial owner or any Associated Person is entitled to based on the increase or decrease in the value of shares of the Corporation or Derivative Instruments, (x) any material interest of the shareholder and any beneficial owner on whose behalf the proposal is being made, and any Associated Person, in such business and (xi) any other information as reasonably requested by the Corporation. The shareholder shall (a) notify the Corporation of any inaccuracy or change (within two business days of becoming aware of such inaccuracy or change) in any information previously provided to the Corporation pursuant to this Section 2.8(a)(3) and (b) promptly update and supplement information previously provided to the Corporation pursuant to this Section 2.8(a)(3), if necessary, so that the information provided or required to be provided shall be true and complete (y) as of the record date for the meeting of shareholders and (z) as of the date that is 10 days prior to the meeting of shareholders or any adjournment or postponement thereof, and such update and supplement shall be delivered to the Secretary at the Corporation&#8217;s principal executive offices. The immediately foregoing provisions shall not be construed to extend any applicable deadlines hereunder, enable a shareholder to change the business proposed for the meeting after the advance notice deadlines hereunder have expired or limit the Corporation&#8217;s rights with respect to any inaccuracies or other deficiencies in notices provided by a shareholder. Unless otherwise required by law, if the shareholder (or a qualified representative of the shareholder) does not appear at the meeting of shareholders to present such business, such proposal shall be disregarded and such business shall not be transacted, notwithstanding that the Corporation may have received proxies in respect of such vote.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;text-indent:72pt;">In addition to the other requirements of this Section 2.8(a)(3) with respect to any business proposed by a shareholder to be made at a meeting, each shareholder, any beneficial owner on whose behalf the proposal is being made and any Associated Person shall also comply with all applicable requirements of the Articles of Incorporation, these Bylaws and state and federal law, including the Exchange Act, with respect to any such proposal or the solicitation of proxies with respect thereto.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;text-indent:72pt;">Notwithstanding anything in these Bylaws to the contrary, no business shall be conducted at a meeting except in accordance with the procedures set forth in this Section 2.8. The chair of a meeting shall, if the facts warrant, determine that the business was not brought before the meeting in accordance with the procedures prescribed by this Section 2.8. If the chair of the meeting should so determine, he or she shall so declare to the meeting, and the business not properly brought before the meeting shall not be transacted. Notwithstanding the foregoing provisions of this Section 2.8(a)(3), a shareholder seeking to have a proposal included in the Corporation&#8217;s proxy statement shall, in order to do so, comply with the requirements of Regulation 14A under the Exchange Act (including Rule 14a-8 or its successor provision).</p>

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

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

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

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 0pt;text-indent:118pt;">(5)&nbsp;&nbsp;&nbsp;&nbsp;A shareholder&#8217;s notice to the Secretary with respect to a nomination of one or more persons for election as directors at a meeting by a shareholder of the Corporation (a &#8220;<b><i>Shareholder Nominee</i></b>&#8221;) shall set forth (a) the name and address, as they appear on the Corporation&#8217;s stock ledger, of the shareholder giving the notice, the name and address of any beneficial owner on whose behalf the nomination is being made and the name and address of any Associated Person, (b) a representation that such shareholder is a shareholder of record and intends to appear in person or by proxy at such meeting to nominate the person or persons specified in the notice, (c)&nbsp;the class and number of shares of stock of the Corporation owned (directly or indirectly) beneficially and of record by such shareholder and any beneficial owner on whose behalf the notice is given and any Associated Person, (d) a description of any Derivative Instrument that has been entered into as of the date of the shareholder&#8217;s notice by, or on behalf of, such shareholder and such beneficial owner, and any Associated Person, whether or not such instrument or right shall be subject to settlement in an underlying class of stock of the Corporation, the effect or intent of which is to mitigate loss to, manage risk or benefit of share price changes for, or increase or decrease the voting power of, such shareholder or such beneficial owner, or any Associated Person, with respect to shares of stock of the Corporation, or relates to the acquisition or disposition of any shares of stock of the Corporation, (e) any proxy (other than a revocable proxy given in response to a solicitation statement filed pursuant to, and in accordance with, Section&nbsp;14(a) of the Exchange Act), voting trust, voting agreement or similar contract, arrangement, agreement or understanding pursuant to which the shareholder and any beneficial owner on whose behalf the nomination is being made, or any Associated Person, has a right to vote or direct the voting of any of the Corporation&#8217;s securities, (f) any rights to dividends on the shares of the Corporation owned beneficially by the shareholder and any Associated Person that are separated or separable from the underlying shares of the Corporation, (g) any proportionate interest in shares of the Corporation or any Derivative Instruments held, directly or indirectly, by a general or limited partnership or limited liability corporation or similar entity in which the shareholder, the beneficial owner or any Associated Person is a general partner or, directly or indirectly, beneficially owns an interest in a general partner, is the manager, managing member or, directly or indirectly, beneficially owns an interest in the manager or managing member of a limited liability corporation or similar entity, (h) any performance-related fees (other than an asset-based fee) that the shareholder, the beneficial owner or any Associated Person is entitled to based on the increase or decrease in the value of shares of the Corporation or Derivative Instruments, (i) a description of all agreements, arrangements and understandings between such shareholder or such beneficial owner or any Associated Person and each Shareholder Nominee with respect to such Shareholder Nominee&#8217;s service or duties as a nominee or director of the Corporation, including any direct or indirect confidentiality, compensation, reimbursement or indemnification arrangement in connection with such Shareholder Nominee&#8217;s service or action as a nominee or director or any commitment or assurance as to how such Shareholder Nominee will act or vote on any matter, (j) the information that would be required to be set forth in a Schedule 13D filed pursuant to Rule 13d-1(a) or an amendment pursuant to Rule 13d-2(a) if such statement were required to be filed under the Exchange Act and the rules and regulations promulgated thereunder by such shareholder and any beneficial owner on whose behalf the notice is given and (k) any other information as reasonably requested by the Corporation. Each such shareholder&#8217;s notice pursuant to this Section 2.8(a)(4) shall also set forth (i) the name, age, business address and, if known, residence address of each Shareholder Nominee for whom the shareholder is proposing or intends to solicit proxies and of each Shareholder Nominee who would be presented for election at the annual meeting in the event of a need to change the shareholders&#8217; original slate, (ii) the principal occupation or employment of each Shareholder Nominee, (iii) the class and number of shares of stock of the Corporation that are owned beneficially and of record by each Shareholder Nominee, (iv) any other information relating to each Shareholder Nominee that is required to be disclosed in solicitations of proxies for election of directors or is otherwise required to be disclosed under the VSCA or applicable listing standards of the primary exchange on which the Corporation&#8217;s capital stock is listed or by the rules and regulations of the SEC promulgated under the Exchange Act, including any proxy statement filed pursuant thereto (in each case, assuming the election is contested), (v) a representation as to whether the shareholder, the beneficial owner, if any, or any Associated Person intends to solicit proxies in support of director nominees other than a director nominee made by the Board or a committee appointed by the Board (each a &#8220;<b><i>Board Nominee</i></b>&#8221;) in compliance with the requirements of Rule 14a-19(b) under the Exchange Act, including a statement that the shareholder, the beneficial owner, if any, or any Associated Person intends to solicit the holders of shares representing at least 67% of the voting power of the shares entitled to vote in the election of directors, and (vi) the written consent of such Shareholder Nominee to be named in proxy statements as a nominee and to serve as a director if elected for the full term. The shareholder shall (1) notify the Corporation of any inaccuracy or change (within two business days of becoming aware of such inaccuracy or change) in any information previously provided to the Corporation pursuant to this Section 2.8(a)(4) and (2) promptly update and supplement information previously provided to the Corporation pursuant to this Section 2.8(a)(4), if necessary, so that the information provided or required to be provided shall be true and complete (y) as of the record date for the meeting and (z) as of the date that is 10 days prior to the meeting or any adjournment or postponement thereof, and such update and supplement shall be delivered to the Secretary at the Corporation&#8217;s principal executive offices.</p>

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

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

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

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;text-indent:72pt;">In addition to the other requirements of this Section 2.8(a)(4) with respect to any nomination proposed by a shareholder to be made at a meeting, each shareholder, any beneficial owner on whose behalf the nomination is being made and any Associated Person shall also comply with all applicable requirements of the Articles of Incorporation, these Bylaws and state and federal law, including the Exchange Act (including Rule 14a-19 thereunder), with respect to any such nomination or the solicitation of proxies with respect thereto. In addition to the other requirements of this Section 2.8(a)(4), unless otherwise required by law, (i) no shareholder, beneficial owner or Associated Person shall solicit proxies in support of any nominees other than Board Nominees unless such shareholder, beneficial owner and Associated Person have complied with Rule 14a-19 under the Exchange Act in connection with the solicitation of such proxies, including the provision to the Corporation of notices required thereunder in a timely manner, and (ii) if such shareholder, beneficial owner or Associated Person (1) provides notice pursuant to Rule 14a-19(b) under the Exchange Act and (2) subsequently fails to comply with any of the requirements of Rule 14a-19 under the Exchange Act, then the Corporation shall disregard any proxies or votes solicited for such shareholder&#8217;s nominees. Upon request by the Corporation, if any shareholder, beneficial owner or Associated Person provides notice pursuant to Rule 14a-19(b) under the Exchange Act, such shareholder, beneficial owner or Associated Person shall deliver to the Corporation, no later than five business days prior to the applicable meeting, reasonable evidence that such shareholder, beneficial owner or Associated Person has met the requirements of Rule 14a-19 under the Exchange Act.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;text-indent:72pt;">The immediately foregoing provisions shall not be construed to extend any applicable deadlines hereunder, enable a shareholder to change the person or persons specified in the notice for election as director after the advance notice deadlines hereunder have expired or limit the Corporation&#8217;s rights with respect to any inaccuracies or other deficiencies in notices provided by a shareholder. The Secretary shall deliver each shareholder&#8217;s notice under this Section 2.8(a)(4) that has been timely received to the Board or a committee designated by the Board for review.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;text-indent:72pt;">Unless otherwise required by law, if the shareholder (or a qualified representative of the shareholder) does not appear at the meeting of shareholders to nominate the individual set forth in the shareholder&#8217;s notice of nomination as a director, such nomination shall be disregarded, notwithstanding that the Corporation may have received proxies in respect of such vote.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;text-indent:72pt;">In addition to the information required to be provided by shareholders pursuant to this Section 2.8(a)(4), each Shareholder Nominee and each Board Nominee shall provide to the Secretary the following information: (i) a completed copy of the Corporation&#8217;s form of director&#8217;s questionnaire and a written consent of the Shareholder Nominee or the Board Nominee to the Corporation following such processes for evaluation of such nominee as the Corporation follows in evaluating any person being considered for nomination to the Board of Directors, as provided by the Secretary; (ii) the Shareholder Nominee&#8217;s or the Board Nominee&#8217;s agreement to comply with the Corporation&#8217;s corporate governance, conflict of interest, confidentiality, share ownership and share trading policies, as provided by the Secretary; (iii) written confirmation that the Shareholder Nominee or the Board Nominee (A) does not have, and will not have or enter into, any agreement, arrangement or understanding as to how he or she will vote on any matter, if elected as a director of the Corporation, and (B) is not a party to, and will not become a party to, any agreement, arrangement or understanding with any person or entity, including any direct or indirect compensation, reimbursement or indemnification arrangement with any person or entity other than the Corporation in connection with such nominee&#8217;s service or action as a director of the Corporation the terms of which have not been fully disclosed in advance to the Secretary; (iv) written disclosure of any transactions between the shareholder and the Shareholder Nominee within the preceding five years; and (v) any additional information as necessary to permit the Board to determine if each Shareholder Nominee and Board Nominee is independent under applicable listing standards with respect to service on the Board or any committee thereof, under any applicable rules of the SEC, and under any publicly disclosed standards used by the Board of Directors in determining and disclosing the independence and qualifications of the Corporation&#8217;s directors.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;text-indent:72pt;">Notwithstanding anything in these Bylaws to the contrary, no nomination for the election of a director shall be considered and voted upon at a meeting except in accordance with the procedures set forth in this Section 2.8. The chair of a meeting shall, if the facts warrant, determine that a nomination for the election of a director was not brought before the meeting in accordance with the procedures prescribed by this Section 2.8. If the chair of the meeting should so determine, he or she shall so declare to the meeting, and the nomination for the election of such director not properly brought before the meeting shall not be considered and voted upon.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 0pt;text-indent:94pt;">(b)<i>&nbsp;&nbsp;&nbsp;&nbsp;Special Meetings of Shareholders</i>.<b> </b>Only such business shall be conducted at a special meeting of shareholders as shall have been brought before the meeting pursuant to the Corporation&#8217;s notice of meeting. Nominations of persons for election to the Board may be made at a special meeting of shareholders at which directors are to be elected pursuant to the Corporation&#8217;s notice of meeting (1) by or at the direction of the Board or any committee thereof or shareholders pursuant to Section 2.3 of these Bylaws or (2) provided that the Board has, or shareholders pursuant to Section 2.3 of these Bylaws have, determined that directors shall be elected at such meeting, by any shareholder of the Corporation who is entitled to vote at the meeting, who complies with the notice procedures set forth in this Section 2.8(b), as applicable, and who is a shareholder of record at the time such notice is delivered to the Secretary and at the time of the special meeting. Clause (2) of the immediately preceding sentence shall be the exclusive means for a shareholder to make nominations before a special meeting of shareholders. In the event the Corporation calls a special meeting of shareholders for the purpose of electing one or more directors to the Board, any such shareholder entitled to vote in such election of directors may nominate a person or persons (as the case may be) for election to such position(s) as specified in the Corporation&#8217;s notice of meeting in accordance with this Section 2.8(b) if the shareholder&#8217;s notice as required by Section 2.8(a)(2) and Section 2.8(a)(4) (as if such special meeting of shareholders was an annual meeting of shareholders) shall be delivered to the Secretary at the principal executive officers of the Corporation not earlier than the close of business on the 120<sup style="vertical-align:top;line-height:120%;font-size:pt">th</sup> day prior to such special meeting and not later than the close of business on the later of the 90<sup style="vertical-align:top;line-height:120%;font-size:pt">th</sup> day prior to such special meeting or the 10<sup style="vertical-align:top;line-height:120%;font-size:pt">th</sup> day following the day on which public announcement is first made of the date of the special meeting and of the nominees proposed by the Board to be elected at such meeting. In no event shall the adjournment or postponement of a special meeting or the public announcement thereof commence a new time period (or extend any time period) for the giving of a shareholder&#8217;s notice as described above.</p>

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

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

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

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 0pt;text-indent:72pt;"><b>2.9&nbsp;&nbsp;&nbsp;&nbsp;Voting Thresholds; Proxies</b>. Unless otherwise required by law or the Articles of Incorporation, the election of directors shall be decided by a plurality of the votes cast at a meeting of the shareholders, at which a quorum is present, by the holders of stock entitled to vote in the election. Unless otherwise required by law, the Articles of Incorporation, or these Bylaw, any matter, other than the election of directors, brought before any meeting of shareholders, at which a quorum is present, shall be decided by the affirmative vote of the majority of shares present in person or represented by proxy at the meeting and entitled to vote on the matter. Each shareholder entitled to vote at a meeting of shareholders or to consent to corporate action without a meeting may authorize another person or persons to act for such shareholder by proxy, but no such proxy shall be voted or acted upon after three years from its date, unless the proxy provides for a longer period. The authorization of a person to act as proxy may be documented, signed, and delivered in accordance with the VSCA provided that such authorization shall set forth, or be delivered with, information enabling the Corporation to determine the identity of the shareholder granting such authorization. A proxy shall be irrevocable if it states that it is irrevocable and if, and only as long as, it is coupled with an interest sufficient in law to support an irrevocable power. A shareholder may revoke any proxy that is not irrevocable by attending the meeting and voting in person or by delivering to the Secretary a revocation of the proxy or a new proxy bearing a later date. Unless required by statute or determined by the chair of the meeting to be advisable, voting at meetings of shareholders need not be by written ballot.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;text-indent:72pt;">Any shareholder directly or indirectly soliciting proxies from other shareholders must use a proxy card color other than white, which shall be reserved for the exclusive use by the Board.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 0pt;text-indent:72pt;"><b>2.10&nbsp;&nbsp;&nbsp;&nbsp;Number of Votes Per Share</b>. Unless otherwise provided in the Articles of Incorporation, each shareholder shall at every meeting of the shareholders be entitled to one vote by such shareholder or by proxy for each share of the capital stock having voting power held by such shareholder.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 0pt;text-indent:72pt;"><b>2.11&nbsp;&nbsp;&nbsp;&nbsp;Action by Written Consent of Shareholders; Electronic Consent; Notice of Action</b>.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 0pt;text-indent:94pt;">(a)<i>&nbsp;&nbsp;&nbsp;&nbsp;Action by Written Consent of Shareholders.</i>&nbsp;Unless otherwise provided by the Articles of Incorporation, any action required or permitted to be taken at any annual or special meeting of the shareholders may be taken without a meeting, without prior notice and without a vote, if a consent in writing setting forth the action so taken, is signed in a manner permitted by law by the holders of outstanding stock having not less than the number of votes that would be necessary to authorize or take such action at a meeting at which all shares entitled to vote thereon were present and voted. Written shareholder consents shall bear the date of signature of each shareholder who signs the consent in the manner permitted by law and shall be delivered to the Corporation as provided in Section&nbsp;2.11(b). No written consent shall be effective to take the action set forth therein unless, within 60 days of the earliest dated consent delivered to the Corporation, written consents signed by a sufficient number of shareholders to take the action set forth therein are delivered to the Corporation.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 0pt;text-indent:94pt;">(b)<i>&nbsp;&nbsp;&nbsp;&nbsp;Electronic Consent</i>.&nbsp;An electronic transmission consenting to an action to be taken and transmitted by a shareholder or proxyholder, or a person or persons authorized to act for a shareholder or proxyholder, shall be deemed to be written, signed and dated for the purposes of this section;&nbsp;<u>provided</u>&nbsp;that any such electronic transmission sets forth or is delivered with information from which the Corporation can determine (i)&nbsp;that the electronic transmission was transmitted by the shareholder or proxyholder or by a person or persons authorized to act for the shareholder or proxyholder and (ii)&nbsp;the date on which such shareholder or proxyholder or authorized person or persons transmitted such electronic transmission. The date on which such electronic transmission is transmitted shall be deemed to be the date on which such consent was signed.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 0pt;text-indent:94pt;">(c)<i>&nbsp;&nbsp;&nbsp;&nbsp;Notice of Action</i>. Prompt notice of any action taken pursuant to this Section&nbsp;2.11 shall be provided to the shareholders in accordance with the VSCA.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 0pt;text-indent:72pt;"><b>2.12&nbsp;&nbsp;&nbsp;&nbsp;Inspectors. </b>The Board shall appoint one or more inspectors of election to act at the meeting or any adjournment thereof. In case any person who may be appointed as an inspector fails to appear or act, the vacancy may be filled by appointment made by the chair of the meeting. Each inspector before entering upon the discharge of such duties shall take and sign an oath to faithfully execute the duties of inspector at such meeting with strict impartiality and according to the best of such inspector&#8217;s ability. The inspector(s) shall (i) ascertain the number of shares outstanding and the voting power of each; (ii) determine the shares represented at a meeting and the validity of proxies and ballots; (iii) count all votes and ballots; (iv) determine and retain for a reasonable period a record of the disposition of any challenges made to any determination by the inspectors; and (v) certify their determination of the number of shares represented at the meeting, and their count of all votes and ballots. On request of the person presiding at the meeting, the inspector(s) shall report in writing on any challenge, question or matter determined by the inspector(s) and execute a certificate of any fact found by the inspector(s).</p>

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

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

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

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

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

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 0pt;text-indent:72pt;"><b>3.1&nbsp;&nbsp;&nbsp;&nbsp;Authorized Directors</b>. The number of directors shall be determined from time to time by resolution of the Board, and each director elected shall hold office until his or her successor is elected and qualified or until such director&#8217;s earlier death, resignation, disqualification or removal. Directors need not be shareholders.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 0pt;text-indent:72pt;"><b>3.2&nbsp;&nbsp;&nbsp;&nbsp;Vacancies</b>. Unless otherwise provided in the Articles of Incorporation, as it may be amended, vacancies and newly created directorships resulting from any increase in the authorized number of directors may be filled by a majority of the directors then in office, though less than a quorum, or by a sole remaining director, and the directors so chosen shall hold office until the next annual election and until their successors are duly elected and qualified or until such director&#8217;s earlier death, resignation, disqualification or removal.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 0pt;text-indent:72pt;"><b>3.3&nbsp;&nbsp;&nbsp;&nbsp;Board Authority</b>. The business of the Corporation shall be managed by or under the direction of the Board.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 0pt;text-indent:72pt;"><b>3.4&nbsp;&nbsp;&nbsp;&nbsp;Location of Meetings</b>. The Board may hold meetings, both regular and special, either within or without the Commonwealth of Virginia.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 0pt;text-indent:72pt;"><b>3.5&nbsp;&nbsp;&nbsp;&nbsp;First Meeting</b>. The first meeting of each newly elected Board shall be held after each annual meeting of shareholders and no notice of such meeting shall be necessary to the newly elected directors in order to legally constitute the meeting.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 0pt;text-indent:72pt;"><b>3.6&nbsp;&nbsp;&nbsp;&nbsp;Regular Meetings</b>. Regular meetings of the Board may be held without notice at such time and at such place as shall from time to time be determined by the Board.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 0pt;text-indent:72pt;"><b>3.7&nbsp;&nbsp;&nbsp;&nbsp;Special Meetings</b>. Special meetings of the Board may be called by the Chair of the Board upon notice to each director; special meetings shall be called by the Chair of the Board or Secretary in like manner and on like notice on the written request of two&nbsp;directors unless the Board consists of only one director, in which case special meetings shall be called by the Chair of the Board or Secretary in like manner and on like notice on the written request of the sole director. Notice of any special meeting shall be given to each director at his or her business or residence in writing, or by facsimile transmission, telephone communication or electronic transmission; <u>provided</u> that, with respect to electronic transmission, the director has consented to receive the form of transmission at the address to which it is directed. If mailed, such notice shall be deemed adequately delivered when deposited in the United States mail so addressed, with postage thereon prepaid, at least five days before such meeting. If by facsimile transmission or other electronic transmission, such notice shall be transmitted at least 24 hours before such meeting. If by telephone, the notice shall be given at least 12 hours prior to the time set for the meeting. Neither the business to be transacted at, nor the purpose of, any regular or special meeting of the Board needs be specified in the notice of such meeting, except for amendments to these Bylaws as provided under Section&nbsp;7.3. A meeting may be held at any time without notice if all the directors are present (except as otherwise provided by law) or if those not present waive notice of the meeting in writing, either before or after such meeting.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 0pt;text-indent:72pt;"><b>3.8&nbsp;&nbsp;&nbsp;&nbsp;Quorum</b>. At all meetings of the Board, a majority of the directors shall constitute a quorum for the transaction of business and any act of a majority of the directors present at any meeting at which there is a quorum shall be an act of the Board, except as may be otherwise specifically provided by statute or by the Articles of Incorporation. If a quorum is not present at any meeting of the Board, the directors present thereat may adjourn the meeting from time to time, without notice other than announcement at the meeting, until a quorum shall be present.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 0pt;text-indent:72pt;"><b>3.9&nbsp;&nbsp;&nbsp;&nbsp;Action Without a Meeting</b>. Unless otherwise restricted by the Articles of Incorporation or these Bylaws, any action required or permitted to be taken at any meeting of the Board or of any committee thereof may be taken without a meeting if all members of the Board or committee, as the case may be, consent thereto in writing or by electronic transmission, and the writing, writings, electronic transmission or transmissions are filed with the minutes of proceedings of the Board or committee.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 0pt;text-indent:72pt;"><b>3.10&nbsp;&nbsp;&nbsp;&nbsp;Telephonic Meetings</b>. Unless otherwise restricted by the Articles of Incorporation or these Bylaws, members of the Board or any committee designated by the Board may participate in a meeting of the Board or any committee, by means of conference telephone or other means of communication by which all persons participating in the meeting can hear each other, and such participation shall constitute presence in person at the meeting.</p>

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

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

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

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 0pt;text-indent:72pt;"><b>3.11&nbsp;&nbsp;&nbsp;&nbsp;Committees</b>. The Board may designate one or more committees, each committee to consist of one or more of the directors of the Corporation. The Board may designate one or more directors as alternate members of any committee, who may replace any absent or disqualified member at any meeting of the committee.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;text-indent:72pt;">In the absence or disqualification of a member of a committee, the member or members thereof present at any meeting and not disqualified from voting, whether or not he or she or they constitute a quorum, may unanimously appoint another member of the Board to act at the meeting in the place of any such absent or disqualified member.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;text-indent:72pt;">Except as otherwise provided by applicable law, any such committee shall have and may exercise all the powers and authority of the Board in the management of the business and affairs of the Corporation, and may authorize the seal of the Corporation to be affixed to all papers that may require it to the extent so authorized by the Board.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;text-indent:72pt;">Unless the Board provides otherwise, at all meetings of a committee, a majority of the then authorized members of the committee shall constitute a quorum for the transaction of business, and the vote of a majority of the members of the committee present at any meeting at which there is a quorum shall be the act of the committee. Unless the Board provides otherwise, each committee designated by the Board may make, alter and repeal rules and procedures for the conduct of its business. In the absence of such rules and procedures each committee shall conduct its business in the same manner as the Board of Directors conducts its business pursuant to this Article III.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 0pt;text-indent:72pt;"><b>3.12&nbsp;&nbsp;&nbsp;&nbsp;Minutes of Meetings</b>. Each committee shall keep regular minutes of its meetings and report the same to the Board when required.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 0pt;text-indent:72pt;"><b>3.13&nbsp;&nbsp;&nbsp;&nbsp;Compensation of Directors</b>. Unless otherwise restricted by the Articles of Incorporation or these Bylaws, the Board shall have the authority to fix the compensation of directors. The directors may be paid their expenses, if any, of attendance at each meeting of the Board and may be paid a fixed sum for attendance at each meeting of the Board or a stated salary as director. No such payment shall preclude any director from serving the Corporation in any other capacity and receiving compensation therefor. Members of special or standing committees may be allowed like compensation for attending committee meetings.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 0pt;text-indent:72pt;"><b>3.14&nbsp;&nbsp;&nbsp;&nbsp;Removal of Directors; Resignations</b>. The shareholders may remove one or more directors with or without cause. If a director is elected by a voting group, only the shareholders of that voting group may elect to remove such director. Unless the Articles of Incorporation require a greater vote, a director may be removed if the number of votes cast to remove such director constitutes a majority of the votes entitled to be cast at an election of directors of the voting group or voting groups by which such director was elected. A director may be removed by the shareholders only at a meeting called for the purpose of removing such director and the meeting notice must state that the purpose, or one of the purposes of the meeting, is removal of the director.</p>

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

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

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 0pt;text-indent:94pt;">(a)&nbsp;&nbsp;&nbsp;&nbsp;Except as otherwise provided, whenever notice is required to be given to any director by applicable law, the Articles of Incorporation or these Bylaws, such notice shall be deemed given effectively if given in person or by telephone, mail addressed to such director at such director&#8217;s address as it appears on the records of the Corporation, facsimile, email, or by other means of electronic transmission, as provided in the VSCA.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin: 0pt 0pt 0pt 0pt;text-indent:94pt;">(b)&nbsp;&nbsp;&nbsp;&nbsp;Whenever notice to directors is required by applicable law, the Articles of Incorporation, or these Bylaws, a waiver thereof, in writing, signed by, or by electronic transmission by the director entitled to the notice, whether before or after such notice is required, shall be deemed equivalent to notice. Attendance by a director at a meeting shall constitute a waiver of notice of such meeting except when the director attends a meeting for the express purpose of objecting, at the beginning of the meeting, to the transaction of any business on the ground that the meeting was not lawfully called or convened. Neither the business to be transacted at, nor the purpose of, any regular or special Board or committee meeting need be specified in any waiver of notice.</p>

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

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

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: center;"><b>ARTICLE IV</b><br>
<b>COMMITTEES OF DIRECTORS</b></p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt 0pt 0pt 8pt;text-indent:22pt;"><b>4.1 Committees. </b>The Board of Directors may create one or more committees and appoint members of the Board of Directors to serve on them. Unless otherwise provided in these Bylaws, each committee shall have two or more members who serve at the pleasure of the Board of Directors. The creation of a committee and appointment of members to it shall be approved by a majority of all of the directors in office when the action is taken.</p>

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

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

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

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt 0pt 0pt 8pt;text-indent:22pt;"><b>4.2 Authority of Committees. </b>To the extent specified by the Board of Directors, each committee may exercise the authority of the Board of Directors, except that a committee may not (i) approve or recommend to shareholders action that is required by law to be approved by shareholders, (ii) fill vacancies on the Board of Directors or on any of its committees, (iii) amend the Articles of Incorporation, (iv) adopt, amend, or repeal these Bylaws, (v) approve a plan of merger not requiring shareholder approval, (vi) authorize or approve a distribution, except according to a general formula or method prescribed by the Board of Directors or (vii) authorize or approve the issuance or sale or contract for sale of shares, or determine the designation and relative rights, preferences, and limitations of a class or series of shares; provided, however, that the Board of Directors may authorize a committee, or a senior executive officer of the Corporation, to do so within limits specifically prescribed by the Board of Directors.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt 0pt 0pt 8pt;text-indent:22pt;"><b>4.3 Audit Committee. </b>The Board of Directors shall appoint an Audit Committee consisting of not less than three (3) directors whose membership shall meet the NASDAQ listing requirements, as amended from time to time. The responsibilities of the Audit Committee shall be determined by the Board of Directors and may be set forth in a Charter as approved from time to time by the Board of Directors.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt 0pt 0pt 8pt;text-indent:22pt;"><b>4.4 Compensation Committee. </b>The Board of Directors shall appoint a Compensation Committee consisting of not less than two (2) directors, whom shall not be officers of the Corporation, and whose membership shall meet the NASDAQ listing requirements, as amended from time to time. The responsibilities of the Compensation Committee shall be determined by the Board of Directors and may be set forth in a Charter as approved from time to time by the Board of Directors.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt 0pt 0pt 8pt;text-indent:22pt;"><b>4.5 Nominating and Governance Committee. </b>The Board of Directors shall appoint a Nominating and Governance Committee consisting of not less than two (2) directors, none of whom shall be officers of the Corporation, and whose membership shall meet the NASDAQ listing requirements as amended from time to time. The responsibilities of the Nominating and Governance Committee shall be determined by the Board of Directors and may be set forth in a Charter as approved from time to time by the Board of Directors.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt 0pt 0pt 11pt;text-indent:22pt;"><b>4.6 Committee Meetings; Miscellaneous. </b>The provisions of these Bylaws which govern meetings, action without meetings, notice and waiver of notice, and quorum and voting requirements and compensation of the Board of Directors shall apply to committees of directors and their members as well.</p>

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

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

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt 0pt 0pt 11pt;text-indent:22pt;"><b>5.1 Officers. </b>The officers of the Corporation shall be a Chairman of the Board of Directors, a President, a Secretary, a Chief Financial Officer or Treasurer, and, in the discretion of the Board of Directors or the Chairman, one or more Vice-Presidents and such other officers as may be deemed necessary or advisable to carry on the business of the Corporation. Any two or more offices may be held by the same person.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt 0pt 0pt 11pt;text-indent:22pt;"><b>5.2 Election; Term. </b>The Chairman, the President, the Secretary and the Chief Financial Officer or Treasurer shall be elected by the Board of Directors. The Chairman or the Board of Directors may, from time to time, appoint other officers. Officers elected by the Board of Directors shall hold office, unless sooner removed, until the next annual meeting of the Board of Directors or until their successors are elected. Officers appointed by the Chairman shall hold office, unless sooner removed, until their successors are appointed. The action of the Chairman in appointing officers shall be reported to the next regular meeting of the Board of Directors after it is taken. Any officer may resign at any time upon written notice to the Board of Directors or the officer appointing such officer and such resignation shall be effective when notice is delivered unless the notice specifies a later effective date.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt 0pt 0pt 11pt;text-indent:22pt;"><b>5.3 Removal of Officers. </b>The Board of Directors may remove any officer at any time, with or without cause. The Chairman may remove any officer he or she appoints at any time, with or without cause. Such action by the Chairman shall be reported to the next regular meeting of the Board of Directors after it is taken.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt 0pt 0pt 11pt;text-indent:22pt;"><b>5.4 Duties of the Chairman. </b>The Chairman shall be the Chief Executive Officer of the Corporation. The Chairman shall have general charge of and be charged with the duty of supervision of the business of the Corporation and shall perform such duties as may, from time to time, be assigned to the Chairman by the Board of Directors.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt 0pt 0pt 11pt;text-indent:22pt;"><b>5.5 Duties of the President. </b>The President shall have such powers and perform such duties as generally pertain to that position or as may, from time to time, be assigned to the President by the Chairman or the Board of Directors.</p>

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

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

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

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt 0pt 0pt 11pt;text-indent:22pt;"><b>5.6 Duties of the Secretary. </b>The Secretary shall have the duty to see that a record of the proceedings of each meeting of the shareholders, the Board of Directors and any committee of the Board of Directors is properly recorded and that notices of all such meetings are duly given in accordance with the provisions of these Bylaws or as required by law; may affix the corporate seal to any document the execution of which is duly authorized, and when so affixed may attest the same; and, in general, shall perform all duties incident to the office of secretary of a corporation and such other duties as, from time to time, may be assigned to the Secretary by the Chairman, the President or the Board of Directors or as may be required by law.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt 0pt 0pt 11pt;text-indent:22pt;"><b>5.7 Duties of the Chief Financial Officer and/or the Treasurer. </b>The Corporation may have a Chief Financial Officer and/or a Treasurer, as determined from time to time by the Chairman, the President or the Board of Directors. The Chief Financial Officer or the Treasurer, if there be one, or both, shall be subject to the control of the Board of Directors, the Chairman and the President, have charge of and be responsible for all securities, funds, receipts and disbursements of the Corporation and shall deposit or cause to be deposited, in the name of the Corporation, all monies or valuable effects in such banks, trust companies or other depositories as shall, from time to time, be selected by or under authority granted by the Board of Directors; shall be custodian of the financial records of the Corporation; shall keep or cause to be kept full and accurate records of all receipts and disbursements of the Corporation; and shall have charge of and be responsible for all internal and external financial accounting functions and treasury functions; Directors, whenever requested, an account of the financial condition of the Corporation; and, shall perform such duties as may be assigned to the Chief Financial Officer or the Treasurer, by the Chairman, the President or the Board of Directors.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt 0pt 0pt 8pt;text-indent:22pt;"><b>5.8 Duties of Other Officers. </b>The other officers of the Corporation, which may include Vice Presidents, Assistant Vice Presidents, Assistant Treasurers, a Controller or Assistant Controllers, and Assistant Secretaries, shall have such authority and perform such duties as shall be prescribed by the Chairman, the President, the Board of Directors or by other officers authorized by the Board of Directors or these Bylaws to appoint them to their respective offices. To the extent that such duties are not so stated, such officers shall have such authority and perform the duties which generally pertain to their respective offices, subject to the control of the Chairman, the President or the Board of Directors.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt 0pt 0pt 8pt;text-indent:22pt;"><b>5.9 Voting Securities of Other Corporations. </b>Unless otherwise provided by the Board of Directors, each of the Chairman, President or the Secretary, in the name and on behalf of the Corporation, may appoint from time to time such officer or any other person (or persons) as proxy, attorney or agent for the Corporation to cast the votes which the Corporation may be entitled to cast as a shareholder, member or otherwise in any other corporation, partnership or other legal entity, domestic or foreign, whose stock, interests or other securities are held by the Corporation, or to consent in writing to any action by such other entity, or to exercise any or all other powers of this Corporation as the holder of the stock, interests or other securities of such other entity. Each of the Chairman, President or the Secretary may instruct the person or persons so appointed as to the manner of casting such votes or giving such consent and may execute or cause to be executed on behalf of the Corporation and under its corporate seal such written proxies, consents, waivers, or other instruments as may be deemed necessary or proper. Each of the Chairman, President or the Secretary may attend any meeting of the holders of stock, interests or other securities of any such other entity and vote or exercise any or all other powers of this Corporation as the holder of the stock, interest or other securities of such other entity.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt 0pt 0pt 8pt;text-indent:22pt;"><b>5.10 Bonds. </b>The Board of Directors may require that any or all officers, employees and agents of the Corporation give bond to the Corporation, with sufficient sureties, conditioned upon the faithful performance of the duties of their respective offices or positions.<br>
&nbsp;</p>

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: center;"><b>ARTICLE VI</b><br>
<b>SHARE CERTIFICATES</b></p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt 0pt 0pt 11pt;text-indent:22pt;"><b>6.1 Form. </b>Shares of the Corporation shall, when fully paid, be evidenced by certificates containing such information as is required by law and approved by the Board of Directors. Certificates shall be signed by the President and the Secretary and may (but need not) be sealed with the seal of the Corporation. The seal of the Corporation and any or all of the signatures on a share certificate may be facsimile. If any officer, transfer agent or registrar who has signed or whose facsimile signature has been placed upon a certificate shall have ceased to be such officer, transfer agent or registrar before such certificate is issued it may be issued by the Corporation with the same effect as if such individual or entity were such officer, transfer agent or registrar on the date of issue. Notwithstanding the foregoing, the Board of Directors may authorize the issue of shares of the Corporation without certificates. Within a reasonable time after the issue or transfer of share without certificates, the Corporation shall cause to be sent to shareholders holding shares not evidenced by certificates a written statement of the information required on certificates as required by applicable law.</p>

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

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

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

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt 0pt 0pt 11pt;text-indent:22pt;"><b>6.2 Transfer. </b>The Board of Directors may make rules and regulations concerning the issue, registration and transfer of shares and/or certificates representing shares of the Corporation. Transfers of shares and/or certificates representing shares shall be made upon the books of the Corporation by book entry or by surrender of the certificates representing such shares endorsed or accompanied by written assignments given by the record owners or their attorneys-in-fact.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt 0pt 0pt 11pt;text-indent:22pt;"><b>6.3 Restrictions on Transfer. </b>A lawful restriction on the transfer or registration of transfer of shares is valid and enforceable against the holder or a transferee of the holder if the restriction complies with the requirements of law and its existence is noted conspicuously on the front or back of the certificate representing the shares or has been otherwise communicated in accordance with the requirements of law. Unless so noted or communicated, a restriction is not enforceable against a person without knowledge of the restriction.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt 0pt 0pt 8pt;text-indent:22pt;"><b>6.4 Lost or Destroyed Share Certificates. </b>The Corporation may issue a new share certificate or a written confirmation of its records with respect to shares in the place of any certificate theretofore issued which is alleged to have been lost or destroyed and may require the owner of such certificate, or his legal representative, to give the Corporation a bond, with or without surety, or such other agreement, undertaking or security as the Board of Directors shall determine is appropriate, to indemnify the Corporation against any claim that may be made against it on account of the alleged loss or destruction or the issuance of any such new certificate or written confirmation.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt 0pt 0pt 8pt;text-indent:22pt;"><b>6.5 Registered Shareholders. </b>The Corporation shall be entitled to treat the holder of record of any share or shares of stock as the owner thereof and, accordingly, shall not be bound to recognize any equitable or other claim to or interest in such share or shares on the part of any other person. The Corporation shall not be liable for registering any transfer of shares which are registered in the name of a fiduciary unless done with actual knowledge of facts which would cause the Corporation's action in registering the transfer to amount to bad faith.</p>

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

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: center;"><b>ARTICLE VII</b><br>
<b>MISCELLANEOUS PROVISIONS</b></p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt 0pt 0pt 8pt;text-indent:22pt;"><b>7.1 Corporate Seal. </b>The corporate seal of the Corporation shall be circular and shall have inscribed thereon, within and around the circumference "OPTICAL CABLE CORPORATION". In the center shall be the word "SEAL".</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt 0pt 0pt 8pt;text-indent:22pt;"><b>7.2 Fiscal Year. </b>The fiscal year of the Corporation shall be determined in the discretion of the Board of Directors, but in the absence of any such determination it shall be the twelve months ending October 31.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt 0pt 0pt 8pt;text-indent:22pt;"><b>7.3 Amendments. </b>These Bylaws may be amended or repealed, and new Bylaws may be adopted by the Board of Directors, at any regular or special meeting of the Board of Directors. Bylaws adopted by the Board of Directors may be repealed or changed and new Bylaws may be adopted by the shareholders, and the shareholders may prescribe that any Bylaw adopted by them shall not be altered, amended or repealed by the Board of Directors.</p>

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

<div class="LAST-PAGE-BREAK">
<div class="PGFTR">
<div class="hf-row">
<div class="hf-cell PGNUM" data-number="12" data-prefix="Page " data-suffix=" of 12" style="text-align: right; font-size: 10pt; font-family: Times New Roman;">Page 12 of 12</div>
</div>
</div>
</div>


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

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

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

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

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

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

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

		<tr style="vertical-align: top;">
			<td style="width: 18pt;">&nbsp;</td>
			<td style="width: 18pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">1.</p>
			</td>
			<td style="width: auto;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;">I have reviewed this quarterly report on Form 10-Q of Optical Cable Corporation;</p>
			</td>
		</tr>

</table>

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

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

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

</table>

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

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

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

</table>

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

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

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

</table>

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

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

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

</table>

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

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

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

</table>

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

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

</table>

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

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

</table>

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

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

</table>

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

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

</table>

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

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

</table>

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

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

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

		<tr>
			<td style="width: 60%;">Date: March 14, 2023&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</td>
			<td style="width: 40%; border-bottom: 1px solid rgb(0, 0, 0);">/s/ Neil D. Wilkin, Jr.</td>
		</tr>
		<tr>
			<td style="width: 60%;">&nbsp;</td>
			<td style="width: 40%;">Neil D. Wilkin, Jr.</td>
		</tr>
		<tr>
			<td style="width: 60%;">&nbsp;</td>
			<td style="width: 40%;">Chairman of the Board of Directors, President</td>
		</tr>
		<tr>
			<td style="width: 60%;">&nbsp;</td>
			<td style="width: 40%;">and Chief Executive Officer</td>
		</tr>

</table>

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

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

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


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

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

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

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

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

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

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

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

		<tr style="vertical-align: top;">
			<td style="width: 18pt;">&nbsp;</td>
			<td style="width: 18pt;">
			<p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">1.</p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;">I have reviewed this quarterly report on Form 10-Q of Optical Cable Corporation;</p>
			</td>
		</tr>

</table>

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

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

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

</table>

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

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

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

</table>

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

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

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

</table>

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

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

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

</table>

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

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

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

</table>

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

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

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

</table>

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

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

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

</table>

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

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

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

</table>

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

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

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

</table>

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

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

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

</table>

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

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

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

		<tr>
			<td style="width: 60%;">Date: March 14, 2023&nbsp;&nbsp;</td>
			<td style="width: 40%; border-bottom: 1px solid rgb(0, 0, 0);">/s/ Tracy G. Smith</td>
		</tr>
		<tr>
			<td style="width: 60%;">&nbsp;</td>
			<td style="width: 40%;">Tracy G. Smith</td>
		</tr>
		<tr>
			<td style="width: 60%;">&nbsp;</td>
			<td style="width: 40%;">Senior Vice President and</td>
		</tr>
		<tr>
			<td style="width: 60%;">&nbsp;</td>
			<td style="width: 40%;">Chief Financial Officer</td>
		</tr>

</table>

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

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

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


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

	<!-- Generated by ThunderDome Portal - 3/7/2023 5:27:40 PM --><meta charset="utf-8"><meta name="format-detection" content="telephone=no">
</head>
<body style="font-size:10pt;font-family:'Times New Roman';padding:0in .1in;">
<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt; text-align: right;"><b>Exhibit 32.1</b></p>

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

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>CERTIFICATION PURSUANT TO 18 U.S.C. SECTION 1350 AS ADOPTED PURSUANT TO SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002</b></p>

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

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">In connection with the Quarterly Report of Optical Cable Corporation (the &#8220;Company&#8221;) on Form 10-Q for the quarter ended January 31, 2023 as filed with the Securities and Exchange Commission on the date hereof (the &#8220;Report&#8221;), the undersigned hereby certifies, pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002 that: (1) the Report fully complies with the requirements of Section 13(a) or 15(d) of the Securities and Exchange Act of 1934; and (2) the information contained in the Report fairly presents, in all material respects, the financial condition and results of operations of the Company as of January 31, 2023, and for the period then ended.</p>

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

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

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

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

		<tr>
			<td style="width: 60%;">Date: March 14, 2023</td>
			<td style="width: 40%; border-bottom: 1px solid rgb(0, 0, 0);">/s/ Neil D. Wilkin, Jr.</td>
		</tr>
		<tr>
			<td style="width: 60%;">&nbsp;</td>
			<td style="width: 40%;">Neil D. Wilkin, Jr.</td>
		</tr>
		<tr>
			<td style="width: 60%;">&nbsp;</td>
			<td style="width: 40%;">Chairman of the Board of Directors,</td>
		</tr>
		<tr>
			<td style="width: 60%;">&nbsp;</td>
			<td style="width: 40%;">President and Chief Executive Officer</td>
		</tr>

</table>

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

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


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

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

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

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>CERTIFICATION PURSUANT TO 18 U.S.C. SECTION 1350 AS ADOPTED PURSUANT TO SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002</b></p>

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

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">In connection with the Quarterly Report of Optical Cable Corporation (the &#8220;Company&#8221;) on Form 10-Q for the quarter ended January 31, 2023 as filed with the Securities and Exchange Commission on the date hereof (the &#8220;Report&#8221;), the undersigned hereby certifies, pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002 that: (1) the Report fully complies with the requirements of Section 13(a) or 15(d) of the Securities and Exchange Act of 1934; and (2) the information contained in the Report fairly presents, in all material respects, the financial condition and results of operations of the Company as of January 31, 2023, and for the period then ended.</p>

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

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

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

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

		<tr>
			<td style="width: 60%;">Date: March 14, 2023</td>
			<td style="width: 40%; border-bottom: 1px solid rgb(0, 0, 0);">/s/ Tracy G. Smith&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</td>
		</tr>
		<tr>
			<td style="width: 60%;">&nbsp;</td>
			<td style="width: 40%;">Tracy G. Smith</td>
		</tr>
		<tr>
			<td style="width: 60%;">&nbsp;</td>
			<td style="width: 40%;">Senior Vice President and</td>
		</tr>
		<tr>
			<td style="width: 60%;">&nbsp;</td>
			<td style="width: 40%;">Chief Financial Officer</td>
		</tr>

</table>

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

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


</body></html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.SCH
<SEQUENCE>7
<FILENAME>occ-20230131.xsd
<DESCRIPTION>XBRL TAXONOMY EXTENSION SCHEMA
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
<!--Generated by ThunderDome XBRL - 06:09PM UTC 2023-03-10--><xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:country="http://xbrl.sec.gov/country/2022" xmlns:currency="http://xbrl.sec.gov/currency/2022" xmlns:dei="http://xbrl.sec.gov/dei/2022" xmlns:dtr-types="http://www.xbrl.org/dtr/type/2020-01-21" xmlns:exch="http://xbrl.sec.gov/exch/2022" xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:naics="http://xbrl.sec.gov/naics/2022" xmlns:occ="http://http/20230131" xmlns:sic="http://xbrl.sec.gov/sic/2022" xmlns:srt="http://fasb.org/srt/2022" xmlns:srt-types="http://fasb.org/srt-types/2022" xmlns:stpr="http://xbrl.sec.gov/stpr/2022" xmlns:us-gaap="http://fasb.org/us-gaap/2022" xmlns:us-types="http://fasb.org/us-types/2022" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xbrli="http://www.xbrl.org/2003/instance" xmlns:xlink="http://www.w3.org/1999/xlink" attributeFormDefault="unqualified" elementFormDefault="qualified" targetNamespace="http://http/20230131">
  <xsd:import namespace="http://www.xbrl.org/2003/instance" schemaLocation="http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd"/>
  <xsd:import namespace="http://xbrl.sec.gov/naics/2022" schemaLocation="https://xbrl.sec.gov/naics/2022/naics-2022.xsd"/>
  <xsd:import namespace="http://xbrl.sec.gov/country/2022" schemaLocation="https://xbrl.sec.gov/country/2022/country-2022.xsd"/>
  <xsd:import namespace="http://fasb.org/srt/2022" schemaLocation="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd"/>
  <xsd:import namespace="http://xbrl.sec.gov/dei/2022" schemaLocation="https://xbrl.sec.gov/dei/2022/dei-2022.xsd"/>
  <xsd:import namespace="http://xbrl.sec.gov/sic/2022" schemaLocation="https://xbrl.sec.gov/sic/2022/sic-2022.xsd"/>
  <xsd:import namespace="http://fasb.org/us-types/2022" schemaLocation="https://xbrl.fasb.org/us-gaap/2022/elts/us-types-2022.xsd"/>
  <xsd:import namespace="http://xbrl.org/2005/xbrldt" schemaLocation="http://www.xbrl.org/2005/xbrldt-2005.xsd"/>
  <xsd:import namespace="http://xbrl.sec.gov/stpr/2022" schemaLocation="https://xbrl.sec.gov/stpr/2022/stpr-2022.xsd"/>
  <xsd:import namespace="http://xbrl.sec.gov/exch/2022" schemaLocation="https://xbrl.sec.gov/exch/2022/exch-2022.xsd"/>
  <xsd:import namespace="http://xbrl.sec.gov/currency/2022" schemaLocation="https://xbrl.sec.gov/currency/2022/currency-2022.xsd"/>
  <xsd:import namespace="http://www.xbrl.org/dtr/type/2020-01-21" schemaLocation="https://www.xbrl.org/dtr/type/2020-01-21/types.xsd"/>
  <xsd:import namespace="http://fasb.org/srt-types/2022" schemaLocation="https://xbrl.fasb.org/srt/2022/elts/srt-types-2022.xsd"/>
  <xsd:import namespace="http://fasb.org/us-gaap/2022" schemaLocation="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd"/>
  <xsd:import namespace="http://www.xbrl.org/2009/role/negated" schemaLocation="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd"/>
  <xsd:annotation>
    <xsd:appinfo>
      <link:linkbaseRef xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="occ-20230131_lab.xml" xlink:role="http://www.xbrl.org/2003/role/labelLinkbaseRef" xlink:type="simple"/>
      <link:linkbaseRef xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="occ-20230131_cal.xml" xlink:role="http://www.xbrl.org/2003/role/calculationLinkbaseRef" xlink:type="simple"/>
      <link:linkbaseRef xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="occ-20230131_def.xml" xlink:role="http://www.xbrl.org/2003/role/definitionLinkbaseRef" xlink:type="simple"/>
      <link:linkbaseRef xlink:arcrole="http://www.w3.org/1999/xlink/properties/linkbase" xlink:href="occ-20230131_pre.xml" xlink:role="http://www.xbrl.org/2003/role/presentationLinkbaseRef" xlink:type="simple"/>
      <link:roleType id="statement-document-and-entity-information" roleURI="http://http/20230131/role/statement-document-and-entity-information">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">000 - Document - Document And Entity Information</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-condensed-consolidated-balance-sheets-unaudited" roleURI="http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">001 - Statement - Condensed Consolidated Balance Sheets (Unaudited)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-condensed-consolidated-balance-sheets-unaudited-parentheticals" roleURI="http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">002 - Statement - Condensed Consolidated Balance Sheets (Unaudited) (Parentheticals)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-condensed-consolidated-statements-of-operations-unaudited-" roleURI="http://http/20230131/role/statement-condensed-consolidated-statements-of-operations-unaudited-">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">003 - Statement - Condensed Consolidated Statements of Operations (Unaudited)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-condensed-consolidated-statements-of-shareholders-equity-unaudited" roleURI="http://http/20230131/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">004 - Statement - Condensed Consolidated Statements of Shareholders' Equity (Unaudited)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-condensed-consolidated-statements-of-cash-flows-unaudited" roleURI="http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">005 - Statement - Condensed Consolidated Statements of Cash Flows (Unaudited)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-1-general" roleURI="http://http/20230131/role/statement-note-1-general">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">006 - Disclosure - Note 1 - General</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-2-stock-incentive-plans-and-other-sharebased-compensation" roleURI="http://http/20230131/role/statement-note-2-stock-incentive-plans-and-other-sharebased-compensation">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">007 - Disclosure - Note 2 - Stock Incentive Plans and Other Share-based Compensation</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable" roleURI="http://http/20230131/role/statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">008 - Disclosure - Note 3 - Allowance for Doubtful Accounts for Trade Accounts Receivable</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-4-inventories" roleURI="http://http/20230131/role/statement-note-4-inventories">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">009 - Disclosure - Note 4 - Inventories</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-5-product-warranties" roleURI="http://http/20230131/role/statement-note-5-product-warranties">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">010 - Disclosure - Note 5 - Product Warranties</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-6-longterm-debt-and-notes-payable-" roleURI="http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">011 - Disclosure - Note 6 - Long-term Debt and Notes Payable</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-7-leases" roleURI="http://http/20230131/role/statement-note-7-leases">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">012 - Disclosure - Note 7 - Leases</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-8-fair-value-measurements" roleURI="http://http/20230131/role/statement-note-8-fair-value-measurements">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">013 - Disclosure - Note 8 - Fair Value Measurements</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-9-net-income-loss-per-share" roleURI="http://http/20230131/role/statement-note-9-net-income-loss-per-share">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">014 - Disclosure - Note 9 - Net Income (Loss) Per Share</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-10-segment-information-and-business-and-credit-concentrations" roleURI="http://http/20230131/role/statement-note-10-segment-information-and-business-and-credit-concentrations">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">015 - Disclosure - Note 10 - Segment Information and Business and Credit Concentrations</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-11-revenue-recognition" roleURI="http://http/20230131/role/statement-note-11-revenue-recognition">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">016 - Disclosure - Note 11 - Revenue Recognition</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-12-contingencies" roleURI="http://http/20230131/role/statement-note-12-contingencies">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">017 - Disclosure - Note 12 - Contingencies</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-13-new-accounting-standards-not-yet-adopted" roleURI="http://http/20230131/role/statement-note-13-new-accounting-standards-not-yet-adopted">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">018 - Disclosure - Note 13 - New Accounting Standards Not Yet Adopted</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-tables" roleURI="http://http/20230131/role/statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">019 - Disclosure - Note 3 - Allowance for Doubtful Accounts for Trade Accounts Receivable (Tables)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-4-inventories-tables" roleURI="http://http/20230131/role/statement-note-4-inventories-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">020 - Disclosure - Note 4 - Inventories (Tables)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-5-product-warranties-tables" roleURI="http://http/20230131/role/statement-note-5-product-warranties-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">021 - Disclosure - Note 5 - Product Warranties (Tables)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-6-longterm-debt-and-notes-payable-tables" roleURI="http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">022 - Disclosure - Note 6 - Long-term Debt and Notes Payable (Tables)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-7-leases-tables" roleURI="http://http/20230131/role/statement-note-7-leases-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">023 - Disclosure - Note 7 - Leases (Tables)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-9-net-income-loss-per-share-tables" roleURI="http://http/20230131/role/statement-note-9-net-income-loss-per-share-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">024 - Disclosure - Note 9 - Net Income (Loss) Per Share (Tables)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-11-revenue-recognition-tables" roleURI="http://http/20230131/role/statement-note-11-revenue-recognition-tables">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">025 - Disclosure - Note 11 - Revenue Recognition (Tables)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-2-stock-incentive-plans-and-other-sharebased-compensation-details-textual" roleURI="http://http/20230131/role/statement-note-2-stock-incentive-plans-and-other-sharebased-compensation-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">026 - Disclosure - Note 2 - Stock Incentive Plans and Other Share-based Compensation (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-summary-of-changes-in-the-allowance-for-doubtful-accounts-for-trade-accounts-receivable-details" roleURI="http://http/20230131/role/statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-summary-of-changes-in-the-allowance-for-doubtful-accounts-for-trade-accounts-receivable-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">027 - Disclosure - Note 3 - Allowance for Doubtful Accounts for Trade Accounts Receivable - Summary of Changes in the Allowance for Doubtful Accounts for Trade Accounts Receivable (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-4-inventories-components-of-inventories-details" roleURI="http://http/20230131/role/statement-note-4-inventories-components-of-inventories-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">028 - Disclosure - Note 4 - Inventories - Components of Inventories (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-5-product-warranties-details-textual" roleURI="http://http/20230131/role/statement-note-5-product-warranties-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">029 - Disclosure - Note 5 - Product Warranties (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-5-product-warranties-changes-in-accrual-for-product-warranties-details" roleURI="http://http/20230131/role/statement-note-5-product-warranties-changes-in-accrual-for-product-warranties-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">030 - Disclosure - Note 5 - Product Warranties - Changes in Accrual for Product Warranties (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-6-longterm-debt-and-notes-payable-details-textual" roleURI="http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">031 - Disclosure - Note 6 - Long-term Debt and Notes Payable (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details" roleURI="http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">032 - Disclosure - Note 6 - Long-term Debt and Notes Payable - Long-term Debt (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details-parentheticals" roleURI="http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details-parentheticals">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">033 - Disclosure - Note 6 - Long-term Debt and Notes Payable - Long-term Debt (Details) (Parentheticals)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-7-leases-details-textual" roleURI="http://http/20230131/role/statement-note-7-leases-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">034 - Disclosure - Note 7 - Leases (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-7-leases-future-payments-due-details" roleURI="http://http/20230131/role/statement-note-7-leases-future-payments-due-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">035 - Disclosure - Note 7 - Leases - Future Payments Due (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-9-net-income-loss-per-share-details-textual" roleURI="http://http/20230131/role/statement-note-9-net-income-loss-per-share-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">036 - Disclosure - Note 9 - Net Income (Loss) Per Share (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-9-net-income-loss-per-share-components-of-reconciliation-of-numerators-and-denominators-net-loss-per-share-details" roleURI="http://http/20230131/role/statement-note-9-net-income-loss-per-share-components-of-reconciliation-of-numerators-and-denominators-net-loss-per-share-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">037 - Disclosure - Note 9 - Net Income (Loss) Per Share - Components of Reconciliation of Numerators and Denominators Net Loss Per Share (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-10-segment-information-and-business-and-credit-concentrations-details-textual" roleURI="http://http/20230131/role/statement-note-10-segment-information-and-business-and-credit-concentrations-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">038 - Disclosure - Note 10 - Segment Information and Business and Credit Concentrations (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-11-revenue-recognition-details-textual" roleURI="http://http/20230131/role/statement-note-11-revenue-recognition-details-textual">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">039 - Disclosure - Note 11 - Revenue Recognition (Details Textual)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
      <link:roleType id="statement-note-11-revenue-recognition-revenue-attributed-to-united-states-and-all-other-countries-details" roleURI="http://http/20230131/role/statement-note-11-revenue-recognition-revenue-attributed-to-united-states-and-all-other-countries-details">
        <link:definition xmlns="http://www.xbrl.org/2003/linkbase">040 - Disclosure - Note 11 - Revenue Recognition - Revenue Attributed to United States and All Other Countries (Details)</link:definition>
        <link:usedOn>link:calculationLink</link:usedOn>
        <link:usedOn>link:definitionLink</link:usedOn>
        <link:usedOn>link:presentationLink</link:usedOn>
      </link:roleType>
    </xsd:appinfo>
  </xsd:annotation>
  <xsd:element abstract="true" id="occ_AccountsPayableAndAccruedLiabilitiesCurrentMember" name="AccountsPayableAndAccruedLiabilitiesCurrentMember" nillable="true" substitutionGroup="xbrli:item" type="dtr-types:domainItemType" xbrli:periodType="duration"/>
  <xsd:element id="occ_AllowanceForDoubtfulAccountsForTradeAccountsReceivableDisclosureTextBlock" name="AllowanceForDoubtfulAccountsForTradeAccountsReceivableDisclosureTextBlock" nillable="true" substitutionGroup="xbrli:item" type="dtr-types:textBlockItemType" xbrli:periodType="duration"/>
  <xsd:element id="occ_ConcentrationRiskNumberOfCustomers" name="ConcentrationRiskNumberOfCustomers" nillable="true" substitutionGroup="xbrli:item" type="xbrli:integerItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="occ_CustomerOneMember" name="CustomerOneMember" nillable="true" substitutionGroup="xbrli:item" type="dtr-types:domainItemType" xbrli:periodType="duration"/>
  <xsd:element id="occ_DebtInstrumentTermExtensions" name="DebtInstrumentTermExtensions" nillable="true" substitutionGroup="xbrli:item" type="xbrli:durationItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="occ_DocumentAndEntityInformation" name="DocumentAndEntityInformation" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="occ_EmployeesConsultantAndNonemployeeDirectorsMember" name="EmployeesConsultantAndNonemployeeDirectorsMember" nillable="true" substitutionGroup="xbrli:item" type="dtr-types:domainItemType" xbrli:periodType="duration"/>
  <xsd:element id="occ_LesseeLeaseLiabilityMaturityTableTextBlock" name="LesseeLeaseLiabilityMaturityTableTextBlock" nillable="true" substitutionGroup="xbrli:item" type="dtr-types:textBlockItemType" xbrli:periodType="duration"/>
  <xsd:element id="occ_LesseeOperatingAndFinanceLeasesDisclosureTextBlock" name="LesseeOperatingAndFinanceLeasesDisclosureTextBlock" nillable="true" substitutionGroup="xbrli:item" type="dtr-types:textBlockItemType" xbrli:periodType="duration"/>
  <xsd:element id="occ_LineOfCreditFacilityAdditionalCapacityForAdvances" name="LineOfCreditFacilityAdditionalCapacityForAdvances" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="instant"/>
  <xsd:element id="occ_LineOfCreditFacilityPercentOfEligibleAccounts" name="LineOfCreditFacilityPercentOfEligibleAccounts" nillable="true" substitutionGroup="xbrli:item" type="dtr-types:percentItemType" xbrli:periodType="instant"/>
  <xsd:element id="occ_LineOfCreditFacilityPercentOfEligibleInventory" name="LineOfCreditFacilityPercentOfEligibleInventory" nillable="true" substitutionGroup="xbrli:item" type="dtr-types:percentItemType" xbrli:periodType="instant"/>
  <xsd:element id="occ_LineOfCreditFacilityRestrictedCapacityForAdvances" name="LineOfCreditFacilityRestrictedCapacityForAdvances" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="instant"/>
  <xsd:element abstract="true" id="occ_NorthCarolinaRealEstateLoanMember" name="NorthCarolinaRealEstateLoanMember" nillable="true" substitutionGroup="xbrli:item" type="dtr-types:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="occ_NorthMillCapitalLlcMember" name="NorthMillCapitalLlcMember" nillable="true" substitutionGroup="xbrli:item" type="dtr-types:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="occ_NoteToFinancialStatementDetailsTextual" name="NoteToFinancialStatementDetailsTextual" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="occ_NotesToFinancialStatements" name="NotesToFinancialStatements" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="occ_NotesToFinancialStatementsAbstract" name="NotesToFinancialStatementsAbstract" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="occ_OperatingLeaseForOfficeEquipmentMember" name="OperatingLeaseForOfficeEquipmentMember" nillable="true" substitutionGroup="xbrli:item" type="dtr-types:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="occ_OperatingLeaseForOfficeManufacturingAndWarehouseSpaceInPlanoTexasMember" name="OperatingLeaseForOfficeManufacturingAndWarehouseSpaceInPlanoTexasMember" nillable="true" substitutionGroup="xbrli:item" type="dtr-types:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="occ_OperatingLeaseForWarehouseSpaceInRoanokeVirginiaMember" name="OperatingLeaseForWarehouseSpaceInRoanokeVirginiaMember" nillable="true" substitutionGroup="xbrli:item" type="dtr-types:domainItemType" xbrli:periodType="duration"/>
  <xsd:element id="occ_OperatingLeaseRightofUseAssetReduction" name="OperatingLeaseRightofUseAssetReduction" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="instant"/>
  <xsd:element abstract="true" id="occ_PinnacleFinancialPartnersMember" name="PinnacleFinancialPartnersMember" nillable="true" substitutionGroup="xbrli:item" type="dtr-types:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="occ_Plan2017Member" name="Plan2017Member" nillable="true" substitutionGroup="xbrli:item" type="dtr-types:domainItemType" xbrli:periodType="duration"/>
  <xsd:element id="occ_RoyaltyRevenueExpense" name="RoyaltyRevenueExpense" nillable="true" substitutionGroup="xbrli:item" type="xbrli:monetaryItemType" xbrli:balance="credit" xbrli:periodType="duration"/>
  <xsd:element id="occ_SummaryOfChangesInAllowanceForDoubtfulAccountsForTradeAccountsReceivableTableTextBlock" name="SummaryOfChangesInAllowanceForDoubtfulAccountsForTradeAccountsReceivableTableTextBlock" nillable="true" substitutionGroup="xbrli:item" type="dtr-types:textBlockItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="occ_VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember" name="VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember" nillable="true" substitutionGroup="xbrli:item" type="dtr-types:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="occ_VirginiaRealEstateLoanMember" name="VirginiaRealEstateLoanMember" nillable="true" substitutionGroup="xbrli:item" type="dtr-types:domainItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="occ_statement-statement-note-11-revenue-recognition-revenue-attributed-to-united-states-and-all-other-countries-details" name="statement-statement-note-11-revenue-recognition-revenue-attributed-to-united-states-and-all-other-countries-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="occ_statement-statement-note-11-revenue-recognition-tables" name="statement-statement-note-11-revenue-recognition-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="occ_statement-statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-summary-of-changes-in-the-allowance-for-doubtful-accounts-for-trade-accounts-receivable-details" name="statement-statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-summary-of-changes-in-the-allowance-for-doubtful-accounts-for-trade-accounts-receivable-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="occ_statement-statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-tables" name="statement-statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="occ_statement-statement-note-4-inventories-components-of-inventories-details" name="statement-statement-note-4-inventories-components-of-inventories-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="occ_statement-statement-note-4-inventories-tables" name="statement-statement-note-4-inventories-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="occ_statement-statement-note-5-product-warranties-changes-in-accrual-for-product-warranties-details" name="statement-statement-note-5-product-warranties-changes-in-accrual-for-product-warranties-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="occ_statement-statement-note-5-product-warranties-tables" name="statement-statement-note-5-product-warranties-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="occ_statement-statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details" name="statement-statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="occ_statement-statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details-parentheticals" name="statement-statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details-parentheticals" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="occ_statement-statement-note-6-longterm-debt-and-notes-payable-tables" name="statement-statement-note-6-longterm-debt-and-notes-payable-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="occ_statement-statement-note-7-leases-future-payments-due-details" name="statement-statement-note-7-leases-future-payments-due-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="occ_statement-statement-note-7-leases-tables" name="statement-statement-note-7-leases-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="occ_statement-statement-note-9-net-income-loss-per-share-components-of-reconciliation-of-numerators-and-denominators-net-loss-per-share-details" name="statement-statement-note-9-net-income-loss-per-share-components-of-reconciliation-of-numerators-and-denominators-net-loss-per-share-details" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
  <xsd:element abstract="true" id="occ_statement-statement-note-9-net-income-loss-per-share-tables" name="statement-statement-note-9-net-income-loss-per-share-tables" nillable="true" substitutionGroup="xbrli:item" type="xbrli:stringItemType" xbrli:periodType="duration"/>
</xsd:schema>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.CAL
<SEQUENCE>8
<FILENAME>occ-20230131_cal.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION CALCULATION LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
<!--Generated by ThunderDome XBRL - 06:09PM UTC 2023-03-10--><link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:roleRef roleURI="http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited" xlink:href="occ-20230131.xsd#statement-condensed-consolidated-balance-sheets-unaudited" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent" xlink:label="us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="us-gaap_AccountsReceivableNetCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Assets" xlink:label="us-gaap_Assets" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsCurrent" xlink:label="us-gaap_AssetsCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockValue" xlink:label="us-gaap_CommonStockValue" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:label="us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Liabilities" xlink:label="us-gaap_Liabilities" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesCurrent" xlink:label="us-gaap_LiabilitiesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LoansPayableCurrent" xlink:label="us-gaap_LoansPayableCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermLineOfCredit" xlink:label="us-gaap_LongTermLineOfCredit" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermLoansPayable" xlink:label="us-gaap_LongTermLoansPayable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="us-gaap_OtherAssetsNoncurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherLiabilitiesNoncurrent" xlink:label="us-gaap_OtherLiabilitiesNoncurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherReceivables" xlink:label="us-gaap_OtherReceivables" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockValue" xlink:label="us-gaap_PreferredStockValue" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TaxesPayableCurrent" xlink:label="us-gaap_TaxesPayableCurrent" xlink:type="locator"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_AccountsReceivableNetCurrent" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_OtherReceivables" xlink:type="arc"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_InventoryNet" xlink:type="arc"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:type="arc"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Assets" xlink:to="us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Assets" xlink:to="us-gaap_OtherAssetsNoncurrent" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Assets" xlink:to="us-gaap_AssetsCurrent" xlink:type="arc"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Assets" xlink:to="us-gaap_PropertyPlantAndEquipmentNet" xlink:type="arc"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_LoansPayableCurrent" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:type="arc"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_TaxesPayableCurrent" xlink:type="arc"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Liabilities" xlink:to="us-gaap_LiabilitiesCurrent" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Liabilities" xlink:to="us-gaap_LongTermLineOfCredit" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Liabilities" xlink:to="us-gaap_LongTermLoansPayable" xlink:type="arc"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_Liabilities" xlink:to="us-gaap_OtherLiabilitiesNoncurrent" xlink:type="arc"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:to="us-gaap_PreferredStockValue" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:to="us-gaap_CommonStockValue" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:type="arc"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_Liabilities" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-condensed-consolidated-statements-of-operations-unaudited-" xlink:href="occ-20230131.xsd#statement-condensed-consolidated-statements-of-operations-unaudited-" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://http/20230131/role/statement-condensed-consolidated-statements-of-operations-unaudited-" xlink:type="extended">
    <link:loc xlink:href="occ-20230131.xsd#occ_RoyaltyRevenueExpense" xlink:label="occ_RoyaltyRevenueExpense" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="us-gaap_AmortizationOfIntangibleAssets" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="us-gaap_CostOfGoodsAndServicesSold" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GrossProfit" xlink:label="us-gaap_GrossProfit" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestExpense" xlink:label="us-gaap_InterestExpense" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="us-gaap_NonoperatingIncomeExpense" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingIncomeLoss" xlink:label="us-gaap_OperatingIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherNonoperatingIncomeExpense" xlink:label="us-gaap_OtherNonoperatingIncomeExpense" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SellingGeneralAndAdministrativeExpense" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpense" xlink:type="locator"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_GrossProfit" xlink:to="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:type="arc"/>
    <link:calculationArc order="1" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_GrossProfit" xlink:to="us-gaap_CostOfGoodsAndServicesSold" xlink:type="arc"/>
    <link:calculationArc order="0" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_OperatingIncomeLoss" xlink:to="us-gaap_SellingGeneralAndAdministrativeExpense" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_OperatingIncomeLoss" xlink:to="occ_RoyaltyRevenueExpense" xlink:type="arc"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_OperatingIncomeLoss" xlink:to="us-gaap_AmortizationOfIntangibleAssets" xlink:type="arc"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_OperatingIncomeLoss" xlink:to="us-gaap_GrossProfit" xlink:type="arc"/>
    <link:calculationArc order="0" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NonoperatingIncomeExpense" xlink:to="us-gaap_InterestExpense" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NonoperatingIncomeExpense" xlink:to="us-gaap_OtherNonoperatingIncomeExpense" xlink:type="arc"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="us-gaap_OperatingIncomeLoss" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="us-gaap_NonoperatingIncomeExpense" xlink:type="arc"/>
    <link:calculationArc order="0" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_IncomeTaxExpenseBenefit" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" xlink:href="occ-20230131.xsd#statement-condensed-consolidated-statements-of-cash-flows-unaudited" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="us-gaap_DepreciationDepletionAndAmortization" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeasePrincipalPayments" xlink:label="us-gaap_FinanceLeasePrincipalPayments" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:label="us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:label="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities" xlink:label="us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="us-gaap_IncreaseDecreaseInInventories" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities" xlink:label="us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:label="us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOtherReceivables" xlink:label="us-gaap_IncreaseDecreaseInOtherReceivables" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:label="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfFinancingCosts" xlink:label="us-gaap_PaymentsOfFinancingCosts" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquireIntangibleAssets" xlink:label="us-gaap_PaymentsToAcquireIntangibleAssets" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromNotesPayable" xlink:label="us-gaap_ProceedsFromNotesPayable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProvisionForDoubtfulAccounts" xlink:label="us-gaap_ProvisionForDoubtfulAccounts" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RepaymentsOfLongTermDebt" xlink:label="us-gaap_RepaymentsOfLongTermDebt" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RepaymentsOfNotesPayable" xlink:label="us-gaap_RepaymentsOfNotesPayable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensation" xlink:label="us-gaap_ShareBasedCompensation" xlink:type="locator"/>
    <link:calculationArc order="0" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:type="arc"/>
    <link:calculationArc order="1" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:type="arc"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities" xlink:type="arc"/>
    <link:calculationArc order="4" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:type="arc"/>
    <link:calculationArc order="5" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities" xlink:type="arc"/>
    <link:calculationArc order="6" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_NetIncomeLoss" xlink:type="arc"/>
    <link:calculationArc order="7" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_DepreciationDepletionAndAmortization" xlink:type="arc"/>
    <link:calculationArc order="8" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_ProvisionForDoubtfulAccounts" xlink:type="arc"/>
    <link:calculationArc order="9" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_ShareBasedCompensation" xlink:type="arc"/>
    <link:calculationArc order="10" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:type="arc"/>
    <link:calculationArc order="11" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:type="arc"/>
    <link:calculationArc order="12" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInOtherReceivables" xlink:type="arc"/>
    <link:calculationArc order="13" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_IncreaseDecreaseInInventories" xlink:type="arc"/>
    <link:calculationArc order="0" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:type="arc"/>
    <link:calculationArc order="1" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_PaymentsToAcquireIntangibleAssets" xlink:type="arc"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_ProceedsFromNotesPayable" xlink:type="arc"/>
    <link:calculationArc order="1" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_RepaymentsOfNotesPayable" xlink:type="arc"/>
    <link:calculationArc order="2" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_RepaymentsOfLongTermDebt" xlink:type="arc"/>
    <link:calculationArc order="3" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_PaymentsOfFinancingCosts" xlink:type="arc"/>
    <link:calculationArc order="4" weight="-1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_FinanceLeasePrincipalPayments" xlink:type="arc"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-4-inventories-components-of-inventories-details" xlink:href="occ-20230131.xsd#statement-note-4-inventories-components-of-inventories-details" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://http/20230131/role/statement-note-4-inventories-components-of-inventories-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:label="us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryRawMaterialsNetOfReserves" xlink:label="us-gaap_InventoryRawMaterialsNetOfReserves" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventorySuppliesNetOfReserves" xlink:label="us-gaap_InventorySuppliesNetOfReserves" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryWorkInProcessNetOfReserves" xlink:label="us-gaap_InventoryWorkInProcessNetOfReserves" xlink:type="locator"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_InventoryNet" xlink:to="us-gaap_InventoryWorkInProcessNetOfReserves" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_InventoryNet" xlink:to="us-gaap_InventoryRawMaterialsNetOfReserves" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_InventoryNet" xlink:to="us-gaap_InventorySuppliesNetOfReserves" xlink:type="arc"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_InventoryNet" xlink:to="us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:type="arc"/>
  </link:calculationLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-7-leases-future-payments-due-details" xlink:href="occ-20230131.xsd#statement-note-7-leases-future-payments-due-details" xlink:type="simple"/>
  <link:calculationLink xlink:role="http://http/20230131/role/statement-note-7-leases-future-payments-due-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:type="locator"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:type="arc"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:type="arc"/>
    <link:calculationArc order="0" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour" xlink:type="arc"/>
    <link:calculationArc order="1" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:type="arc"/>
    <link:calculationArc order="2" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo" xlink:type="arc"/>
    <link:calculationArc order="3" weight="1.0" xlink:arcrole="http://www.xbrl.org/2003/arcrole/summation-item" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree" xlink:type="arc"/>
  </link:calculationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.DEF
<SEQUENCE>9
<FILENAME>occ-20230131_def.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION DEFINITION LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
<!--Generated by ThunderDome XBRL - 06:09PM UTC 2023-03-10--><link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/all" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#all" xlink:type="simple"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/domain-member" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#domain-member" xlink:type="simple"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-domain" xlink:type="simple"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#hypercube-dimension" xlink:type="simple"/>
  <link:arcroleRef arcroleURI="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:href="http://www.xbrl.org/2005/xbrldt-2005.xsd#dimension-default" xlink:type="simple"/>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-13-new-accounting-standards-not-yet-adopted" xlink:href="occ-20230131.xsd#statement-note-13-new-accounting-standards-not-yet-adopted" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://http/20230131/role/statement-note-13-new-accounting-standards-not-yet-adopted" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:label="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-12-contingencies" xlink:href="occ-20230131.xsd#statement-note-12-contingencies" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://http/20230131/role/statement-note-12-contingencies" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-8-fair-value-measurements" xlink:href="occ-20230131.xsd#statement-note-8-fair-value-measurements" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://http/20230131/role/statement-note-8-fair-value-measurements" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueDisclosuresTextBlock" xlink:label="us-gaap_FairValueDisclosuresTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_FairValueDisclosuresTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-1-general" xlink:href="occ-20230131.xsd#statement-note-1-general" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://http/20230131/role/statement-note-1-general" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock" xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-document-and-entity-information" xlink:href="occ-20230131.xsd#statement-document-and-entity-information" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://http/20230131/role/statement-document-and-entity-information" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AmendmentFlag" xlink:label="dei_AmendmentFlag" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_CityAreaCode" xlink:label="dei_CityAreaCode" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_CurrentFiscalYearEndDate" xlink:label="dei_CurrentFiscalYearEndDate" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="dei_DocumentFiscalPeriodFocus" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentFiscalYearFocus" xlink:label="dei_DocumentFiscalYearFocus" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentInformationLineItems" xlink:label="dei_DocumentInformationLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentInformationTable" xlink:label="dei_DocumentInformationTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentPeriodEndDate" xlink:label="dei_DocumentPeriodEndDate" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentQuarterlyReport" xlink:label="dei_DocumentQuarterlyReport" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentTransitionReport" xlink:label="dei_DocumentTransitionReport" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentType" xlink:label="dei_DocumentType" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressAddressLine1" xlink:label="dei_EntityAddressAddressLine1" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressCityOrTown" xlink:label="dei_EntityAddressCityOrTown" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressPostalZipCode" xlink:label="dei_EntityAddressPostalZipCode" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressStateOrProvince" xlink:label="dei_EntityAddressStateOrProvince" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityCentralIndexKey" xlink:label="dei_EntityCentralIndexKey" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="dei_EntityCommonStockSharesOutstanding" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityCurrentReportingStatus" xlink:label="dei_EntityCurrentReportingStatus" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityEmergingGrowthCompany" xlink:label="dei_EntityEmergingGrowthCompany" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityFileNumber" xlink:label="dei_EntityFileNumber" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityFilerCategory" xlink:label="dei_EntityFilerCategory" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="dei_EntityIncorporationStateCountryCode" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityInteractiveDataCurrent" xlink:label="dei_EntityInteractiveDataCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityRegistrantName" xlink:label="dei_EntityRegistrantName" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityShellCompany" xlink:label="dei_EntityShellCompany" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntitySmallBusiness" xlink:label="dei_EntitySmallBusiness" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityTaxIdentificationNumber" xlink:label="dei_EntityTaxIdentificationNumber" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LocalPhoneNumber" xlink:label="dei_LocalPhoneNumber" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_Security12bTitle" xlink:label="dei_Security12bTitle" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_SecurityExchangeName" xlink:label="dei_SecurityExchangeName" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_TradingSymbol" xlink:label="dei_TradingSymbol" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="dei_DocumentInformationTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentInformationTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentType" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentQuarterlyReport" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentPeriodEndDate" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentTransitionReport" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityFileNumber" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityRegistrantName" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityIncorporationStateCountryCode" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityTaxIdentificationNumber" xlink:type="arc"/>
    <link:definitionArc order="9" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityAddressAddressLine1" xlink:type="arc"/>
    <link:definitionArc order="10" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityAddressCityOrTown" xlink:type="arc"/>
    <link:definitionArc order="11" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityAddressStateOrProvince" xlink:type="arc"/>
    <link:definitionArc order="12" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityAddressPostalZipCode" xlink:type="arc"/>
    <link:definitionArc order="13" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_CityAreaCode" xlink:type="arc"/>
    <link:definitionArc order="14" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_LocalPhoneNumber" xlink:type="arc"/>
    <link:definitionArc order="15" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_Security12bTitle" xlink:type="arc"/>
    <link:definitionArc order="16" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_TradingSymbol" xlink:type="arc"/>
    <link:definitionArc order="17" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_SecurityExchangeName" xlink:type="arc"/>
    <link:definitionArc order="18" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityCurrentReportingStatus" xlink:type="arc"/>
    <link:definitionArc order="19" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityInteractiveDataCurrent" xlink:type="arc"/>
    <link:definitionArc order="20" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityFilerCategory" xlink:type="arc"/>
    <link:definitionArc order="21" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntitySmallBusiness" xlink:type="arc"/>
    <link:definitionArc order="22" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityEmergingGrowthCompany" xlink:type="arc"/>
    <link:definitionArc order="23" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityShellCompany" xlink:type="arc"/>
    <link:definitionArc order="24" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityCommonStockSharesOutstanding" xlink:type="arc"/>
    <link:definitionArc order="25" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityCentralIndexKey" xlink:type="arc"/>
    <link:definitionArc order="26" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_CurrentFiscalYearEndDate" xlink:type="arc"/>
    <link:definitionArc order="27" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentFiscalYearFocus" xlink:type="arc"/>
    <link:definitionArc order="28" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentFiscalPeriodFocus" xlink:type="arc"/>
    <link:definitionArc order="29" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_AmendmentFlag" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited" xlink:href="occ-20230131.xsd#statement-condensed-consolidated-balance-sheets-unaudited" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent" xlink:label="us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="us-gaap_AccountsReceivableNetCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Assets" xlink:label="us-gaap_Assets" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsCurrent" xlink:label="us-gaap_AssetsCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="us-gaap_AssetsCurrentAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingencies" xlink:label="us-gaap_CommitmentsAndContingencies" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockValue" xlink:label="us-gaap_CommonStockValue" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:label="us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Liabilities" xlink:label="us-gaap_Liabilities" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesCurrent" xlink:label="us-gaap_LiabilitiesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="us-gaap_LiabilitiesCurrentAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LoansPayableCurrent" xlink:label="us-gaap_LoansPayableCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermLineOfCredit" xlink:label="us-gaap_LongTermLineOfCredit" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermLoansPayable" xlink:label="us-gaap_LongTermLoansPayable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="us-gaap_OtherAssetsNoncurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherLiabilitiesNoncurrent" xlink:label="us-gaap_OtherLiabilitiesNoncurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherReceivables" xlink:label="us-gaap_OtherReceivables" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockValue" xlink:label="us-gaap_PreferredStockValue" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquityAbstract" xlink:label="us-gaap_StockholdersEquityAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TaxesPayableCurrent" xlink:label="us-gaap_TaxesPayableCurrent" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AssetsCurrentAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_AccountsReceivableNetCurrent" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_OtherReceivables" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_InventoryNet" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_AssetsCurrent" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_PropertyPlantAndEquipmentNet" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_OtherAssetsNoncurrent" xlink:type="arc"/>
    <link:definitionArc order="9" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_Assets" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LiabilitiesCurrentAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_LoansPayableCurrent" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_TaxesPayableCurrent" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_LiabilitiesCurrent" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_LongTermLineOfCredit" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_LongTermLoansPayable" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_OtherLiabilitiesNoncurrent" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_Liabilities" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockholdersEquityAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_PreferredStockValue" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_CommonStockValue" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_CommitmentsAndContingencies" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_LiabilitiesAndStockholdersEquity" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals" xlink:href="occ-20230131.xsd#statement-condensed-consolidated-balance-sheets-unaudited-parentheticals" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockNoParValue" xlink:label="us-gaap_CommonStockNoParValue" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="us-gaap_CommonStockSharesAuthorized" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesIssued" xlink:label="us-gaap_CommonStockSharesIssued" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="us-gaap_CommonStockSharesOutstanding" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockNoParValue" xlink:label="us-gaap_PreferredStockNoParValue" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockSharesAuthorized" xlink:label="us-gaap_PreferredStockSharesAuthorized" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockSharesIssued" xlink:label="us-gaap_PreferredStockSharesIssued" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockSharesOutstanding" xlink:label="us-gaap_PreferredStockSharesOutstanding" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PreferredStockNoParValue" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PreferredStockSharesAuthorized" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PreferredStockSharesIssued" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PreferredStockSharesOutstanding" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CommonStockNoParValue" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CommonStockSharesAuthorized" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CommonStockSharesOutstanding" xlink:type="arc"/>
    <link:definitionArc order="9" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CommonStockSharesIssued" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-condensed-consolidated-statements-of-operations-unaudited-" xlink:href="occ-20230131.xsd#statement-condensed-consolidated-statements-of-operations-unaudited-" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://http/20230131/role/statement-condensed-consolidated-statements-of-operations-unaudited-" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_RoyaltyRevenueExpense" xlink:label="occ_RoyaltyRevenueExpense" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="us-gaap_AmortizationOfIntangibleAssets" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="us-gaap_CostOfGoodsAndServicesSold" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareBasic" xlink:label="us-gaap_EarningsPerShareBasic" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GrossProfit" xlink:label="us-gaap_GrossProfit" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestExpense" xlink:label="us-gaap_InterestExpense" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="us-gaap_NonoperatingIncomeExpense" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingIncomeLoss" xlink:label="us-gaap_OperatingIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherIncomeAndExpensesAbstract" xlink:label="us-gaap_OtherIncomeAndExpensesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherNonoperatingIncomeExpense" xlink:label="us-gaap_OtherNonoperatingIncomeExpense" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SellingGeneralAndAdministrativeExpense" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpense" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CostOfGoodsAndServicesSold" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_GrossProfit" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SellingGeneralAndAdministrativeExpense" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="occ_RoyaltyRevenueExpense" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AmortizationOfIntangibleAssets" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingIncomeLoss" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OtherIncomeAndExpensesAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OtherIncomeAndExpensesAbstract" xlink:to="us-gaap_InterestExpense" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OtherIncomeAndExpensesAbstract" xlink:to="us-gaap_OtherNonoperatingIncomeExpense" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OtherIncomeAndExpensesAbstract" xlink:to="us-gaap_NonoperatingIncomeExpense" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OtherIncomeAndExpensesAbstract" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OtherIncomeAndExpensesAbstract" xlink:to="us-gaap_IncomeTaxExpenseBenefit" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OtherIncomeAndExpensesAbstract" xlink:to="us-gaap_NetIncomeLoss" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_OtherIncomeAndExpensesAbstract" xlink:to="us-gaap_EarningsPerShareBasic" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited" xlink:href="occ-20230131.xsd#statement-condensed-consolidated-statements-of-shareholders-equity-unaudited" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://http/20230131/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockMember" xlink:label="us-gaap_CommonStockMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetainedEarningsMember" xlink:label="us-gaap_RetainedEarningsMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharesOutstanding" xlink:label="us-gaap_SharesOutstanding" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:label="us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:label="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementEquityComponentsAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_CommonStockMember" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_RetainedEarningsMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SharesOutstanding" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockholdersEquity" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetIncomeLoss" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" xlink:href="occ-20230131.xsd#statement-condensed-consolidated-statements-of-cash-flows-unaudited" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_PinnacleFinancialPartnersMember" xlink:label="occ_PinnacleFinancialPartnersMember" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember" xlink:label="occ_VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="us-gaap_DepreciationDepletionAndAmortization" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeasePrincipalPayments" xlink:label="us-gaap_FinanceLeasePrincipalPayments" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:label="us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:label="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities" xlink:label="us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="us-gaap_IncreaseDecreaseInInventories" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOperatingAssetsAbstract" xlink:label="us-gaap_IncreaseDecreaseInOperatingAssetsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOperatingLiabilitiesAbstract" xlink:label="us-gaap_IncreaseDecreaseInOperatingLiabilitiesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities" xlink:label="us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:label="us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOtherReceivables" xlink:label="us-gaap_IncreaseDecreaseInOtherReceivables" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:label="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityAxis" xlink:label="us-gaap_LineOfCreditFacilityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityLenderDomain" xlink:label="us-gaap_LineOfCreditFacilityLenderDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityLenderDomain" xlink:label="us-gaap_LineOfCreditFacilityLenderDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeAxis" xlink:label="us-gaap_LongtermDebtTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeDomain" xlink:label="us-gaap_LongtermDebtTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeDomain" xlink:label="us-gaap_LongtermDebtTypeDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfFinancingCosts" xlink:label="us-gaap_PaymentsOfFinancingCosts" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquireIntangibleAssets" xlink:label="us-gaap_PaymentsToAcquireIntangibleAssets" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromNotesPayable" xlink:label="us-gaap_ProceedsFromNotesPayable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProvisionForDoubtfulAccounts" xlink:label="us-gaap_ProvisionForDoubtfulAccounts" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RepaymentsOfLongTermDebt" xlink:label="us-gaap_RepaymentsOfLongTermDebt" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RepaymentsOfNotesPayable" xlink:label="us-gaap_RepaymentsOfNotesPayable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensation" xlink:label="us-gaap_ShareBasedCompensation" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="us-gaap_LongtermDebtTypeDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_LineOfCreditFacilityAxis" xlink:to="us-gaap_LineOfCreditFacilityLenderDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_LineOfCreditFacilityAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LineOfCreditFacilityLenderDomain" xlink:to="occ_PinnacleFinancialPartnersMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_LineOfCreditFacilityAxis" xlink:to="us-gaap_LineOfCreditFacilityLenderDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_LongtermDebtTypeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LongtermDebtTypeDomain" xlink:to="occ_VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="us-gaap_LongtermDebtTypeDomain-default" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_NetIncomeLoss" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_DepreciationDepletionAndAmortization" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_ProvisionForDoubtfulAccounts" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_ShareBasedCompensation" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IncreaseDecreaseInOperatingAssetsAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingAssetsAbstract" xlink:to="us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingAssetsAbstract" xlink:to="us-gaap_IncreaseDecreaseInOtherReceivables" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingAssetsAbstract" xlink:to="us-gaap_IncreaseDecreaseInInventories" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingAssetsAbstract" xlink:to="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingAssetsAbstract" xlink:to="us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IncreaseDecreaseInOperatingLiabilitiesAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingLiabilitiesAbstract" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingLiabilitiesAbstract" xlink:to="us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingLiabilitiesAbstract" xlink:to="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingLiabilitiesAbstract" xlink:to="us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_IncreaseDecreaseInOperatingLiabilitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_PaymentsToAcquireIntangibleAssets" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_ProceedsFromNotesPayable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_RepaymentsOfNotesPayable" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_RepaymentsOfLongTermDebt" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_PaymentsOfFinancingCosts" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_FinanceLeasePrincipalPayments" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-2-stock-incentive-plans-and-other-sharebased-compensation" xlink:href="occ-20230131.xsd#statement-note-2-stock-incentive-plans-and-other-sharebased-compensation" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://http/20230131/role/statement-note-2-stock-incentive-plans-and-other-sharebased-compensation" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_EmployeesConsultantAndNonemployeeDirectorsMember" xlink:label="occ_EmployeesConsultantAndNonemployeeDirectorsMember" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_Plan2017Member" xlink:label="occ_Plan2017Member" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_TitleOfIndividualAxis" xlink:label="srt_TitleOfIndividualAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameAxis" xlink:label="us-gaap_PlanNameAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockMember" xlink:label="us-gaap_RestrictedStockMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_PlanNameAxis" xlink:to="us-gaap_PlanNameDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_PlanNameAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PlanNameDomain" xlink:to="occ_Plan2017Member" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_PlanNameAxis" xlink:to="us-gaap_PlanNameDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_TitleOfIndividualAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="occ_EmployeesConsultantAndNonemployeeDirectorsMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_AwardTypeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_RestrictedStockMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain-default" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable" xlink:href="occ-20230131.xsd#statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://http/20230131/role/statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_AllowanceForDoubtfulAccountsForTradeAccountsReceivableDisclosureTextBlock" xlink:label="occ_AllowanceForDoubtfulAccountsForTradeAccountsReceivableDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="occ_AllowanceForDoubtfulAccountsForTradeAccountsReceivableDisclosureTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-4-inventories" xlink:href="occ-20230131.xsd#statement-note-4-inventories" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://http/20230131/role/statement-note-4-inventories" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryDisclosureTextBlock" xlink:label="us-gaap_InventoryDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_InventoryDisclosureTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-5-product-warranties" xlink:href="occ-20230131.xsd#statement-note-5-product-warranties" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://http/20230131/role/statement-note-5-product-warranties" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesMember" xlink:label="us-gaap_AccountsPayableAndAccruedLiabilitiesMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="us-gaap_BalanceSheetLocationAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="us-gaap_BalanceSheetLocationDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="us-gaap_BalanceSheetLocationDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyDisclosureTextBlock" xlink:label="us-gaap_ProductWarrantyDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_BalanceSheetLocationAxis" xlink:to="us-gaap_BalanceSheetLocationDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_BalanceSheetLocationAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_BalanceSheetLocationDomain" xlink:to="us-gaap_AccountsPayableAndAccruedLiabilitiesMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_BalanceSheetLocationAxis" xlink:to="us-gaap_BalanceSheetLocationDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_ProductWarrantyDisclosureTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-" xlink:href="occ-20230131.xsd#statement-note-6-longterm-debt-and-notes-payable-" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_NorthCarolinaRealEstateLoanMember" xlink:label="occ_NorthCarolinaRealEstateLoanMember" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_NorthMillCapitalLlcMember" xlink:label="occ_NorthMillCapitalLlcMember" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_PinnacleFinancialPartnersMember" xlink:label="occ_PinnacleFinancialPartnersMember" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember" xlink:label="occ_VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_VirginiaRealEstateLoanMember" xlink:label="occ_VirginiaRealEstateLoanMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember" xlink:label="srt_RangeMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember" xlink:label="srt_RangeMember-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityAxis" xlink:label="us-gaap_CreditFacilityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityDomain" xlink:label="us-gaap_CreditFacilityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityDomain" xlink:label="us-gaap_CreditFacilityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityAxis" xlink:label="us-gaap_LineOfCreditFacilityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityLenderDomain" xlink:label="us-gaap_LineOfCreditFacilityLenderDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityLenderDomain" xlink:label="us-gaap_LineOfCreditFacilityLenderDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtTextBlock" xlink:label="us-gaap_LongTermDebtTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeAxis" xlink:label="us-gaap_LongtermDebtTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeDomain" xlink:label="us-gaap_LongtermDebtTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeDomain" xlink:label="us-gaap_LongtermDebtTypeDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PrimeRateMember" xlink:label="us-gaap_PrimeRateMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevolvingCreditFacilityMember" xlink:label="us-gaap_RevolvingCreditFacilityMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VariableRateAxis" xlink:label="us-gaap_VariableRateAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VariableRateDomain" xlink:label="us-gaap_VariableRateDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VariableRateDomain" xlink:label="us-gaap_VariableRateDomain-default" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_CreditFacilityAxis" xlink:to="us-gaap_CreditFacilityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="us-gaap_LongtermDebtTypeDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_VariableRateAxis" xlink:to="us-gaap_VariableRateDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_LineOfCreditFacilityAxis" xlink:to="us-gaap_LineOfCreditFacilityLenderDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_LineOfCreditFacilityAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LineOfCreditFacilityLenderDomain" xlink:to="occ_PinnacleFinancialPartnersMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_LineOfCreditFacilityAxis" xlink:to="us-gaap_LineOfCreditFacilityLenderDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_LongtermDebtTypeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LongtermDebtTypeDomain" xlink:to="occ_VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="us-gaap_LongtermDebtTypeDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LongtermDebtTypeDomain" xlink:to="occ_VirginiaRealEstateLoanMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LongtermDebtTypeDomain" xlink:to="occ_NorthCarolinaRealEstateLoanMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_CreditFacilityAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_CreditFacilityDomain" xlink:to="us-gaap_RevolvingCreditFacilityMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_CreditFacilityAxis" xlink:to="us-gaap_CreditFacilityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LineOfCreditFacilityLenderDomain" xlink:to="occ_NorthMillCapitalLlcMember" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_VariableRateAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_VariableRateDomain" xlink:to="us-gaap_PrimeRateMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_VariableRateAxis" xlink:to="us-gaap_VariableRateDomain-default" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_RangeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember-default" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_LongTermDebtTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-7-leases" xlink:href="occ-20230131.xsd#statement-note-7-leases" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://http/20230131/role/statement-note-7-leases" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_AccountsPayableAndAccruedLiabilitiesCurrentMember" xlink:label="occ_AccountsPayableAndAccruedLiabilitiesCurrentMember" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_LesseeOperatingAndFinanceLeasesDisclosureTextBlock" xlink:label="occ_LesseeOperatingAndFinanceLeasesDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_OperatingLeaseForOfficeEquipmentMember" xlink:label="occ_OperatingLeaseForOfficeEquipmentMember" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_OperatingLeaseForOfficeManufacturingAndWarehouseSpaceInPlanoTexasMember" xlink:label="occ_OperatingLeaseForOfficeManufacturingAndWarehouseSpaceInPlanoTexasMember" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_OperatingLeaseForWarehouseSpaceInRoanokeVirginiaMember" xlink:label="occ_OperatingLeaseForWarehouseSpaceInRoanokeVirginiaMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesMember" xlink:label="us-gaap_AccountsPayableAndAccruedLiabilitiesMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="us-gaap_BalanceSheetLocationAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="us-gaap_BalanceSheetLocationDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="us-gaap_BalanceSheetLocationDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseContractualTermAxis" xlink:label="us-gaap_LeaseContractualTermAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseContractualTermDomain" xlink:label="us-gaap_LeaseContractualTermDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseContractualTermDomain" xlink:label="us-gaap_LeaseContractualTermDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherAssetsMember" xlink:label="us-gaap_OtherAssetsMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherNoncurrentLiabilitiesMember" xlink:label="us-gaap_OtherNoncurrentLiabilitiesMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_BalanceSheetLocationAxis" xlink:to="us-gaap_BalanceSheetLocationDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_LeaseContractualTermAxis" xlink:to="us-gaap_LeaseContractualTermDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_LeaseContractualTermAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LeaseContractualTermDomain" xlink:to="occ_OperatingLeaseForOfficeManufacturingAndWarehouseSpaceInPlanoTexasMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_LeaseContractualTermAxis" xlink:to="us-gaap_LeaseContractualTermDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LeaseContractualTermDomain" xlink:to="occ_OperatingLeaseForWarehouseSpaceInRoanokeVirginiaMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LeaseContractualTermDomain" xlink:to="occ_OperatingLeaseForOfficeEquipmentMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_BalanceSheetLocationAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_BalanceSheetLocationDomain" xlink:to="us-gaap_OtherAssetsMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_BalanceSheetLocationAxis" xlink:to="us-gaap_BalanceSheetLocationDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_BalanceSheetLocationDomain" xlink:to="us-gaap_AccountsPayableAndAccruedLiabilitiesMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_BalanceSheetLocationDomain" xlink:to="us-gaap_OtherNoncurrentLiabilitiesMember" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_BalanceSheetLocationDomain" xlink:to="occ_AccountsPayableAndAccruedLiabilitiesCurrentMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="occ_LesseeOperatingAndFinanceLeasesDisclosureTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-9-net-income-loss-per-share" xlink:href="occ-20230131.xsd#statement-note-9-net-income-loss-per-share" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://http/20230131/role/statement-note-9-net-income-loss-per-share" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareTextBlock" xlink:label="us-gaap_EarningsPerShareTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_EarningsPerShareTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-10-segment-information-and-business-and-credit-concentrations" xlink:href="occ-20230131.xsd#statement-note-10-segment-information-and-business-and-credit-concentrations" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://http/20230131/role/statement-note-10-segment-information-and-business-and-credit-concentrations" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_CustomerOneMember" xlink:label="occ_CustomerOneMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MajorCustomersAxis" xlink:label="srt_MajorCustomersAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_NameOfMajorCustomerDomain" xlink:label="srt_NameOfMajorCustomerDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_NameOfMajorCustomerDomain" xlink:label="srt_NameOfMajorCustomerDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="us-gaap_ConcentrationRiskByTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskDisclosureTextBlock" xlink:label="us-gaap_ConcentrationRiskDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="us-gaap_CustomerConcentrationRiskMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SalesRevenueNetMember" xlink:label="us-gaap_SalesRevenueNetMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_MajorCustomersAxis" xlink:to="srt_NameOfMajorCustomerDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskTypeDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="us-gaap_SalesRevenueNetMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_ConcentrationRiskByTypeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ConcentrationRiskTypeDomain" xlink:to="us-gaap_CustomerConcentrationRiskMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskTypeDomain-default" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_MajorCustomersAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_NameOfMajorCustomerDomain" xlink:to="occ_CustomerOneMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_MajorCustomersAxis" xlink:to="srt_NameOfMajorCustomerDomain-default" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_ConcentrationRiskDisclosureTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-11-revenue-recognition" xlink:href="occ-20230131.xsd#statement-note-11-revenue-recognition" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://http/20230131/role/statement-note-11-revenue-recognition" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_US" xlink:label="country_US" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NonUsMember" xlink:label="us-gaap_NonUsMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:label="us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_StatementGeographicalAxis" xlink:to="srt_SegmentGeographicalDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_StatementGeographicalAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_SegmentGeographicalDomain" xlink:to="country_US" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_StatementGeographicalAxis" xlink:to="srt_SegmentGeographicalDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_SegmentGeographicalDomain" xlink:to="us-gaap_NonUsMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-tables" xlink:href="occ-20230131.xsd#statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://http/20230131/role/statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_SummaryOfChangesInAllowanceForDoubtfulAccountsForTradeAccountsReceivableTableTextBlock" xlink:label="occ_SummaryOfChangesInAllowanceForDoubtfulAccountsForTradeAccountsReceivableTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="occ_SummaryOfChangesInAllowanceForDoubtfulAccountsForTradeAccountsReceivableTableTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-4-inventories-tables" xlink:href="occ-20230131.xsd#statement-note-4-inventories-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://http/20230131/role/statement-note-4-inventories-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:label="us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-5-product-warranties-tables" xlink:href="occ-20230131.xsd#statement-note-5-product-warranties-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://http/20230131/role/statement-note-5-product-warranties-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:label="us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-tables" xlink:href="occ-20230131.xsd#statement-note-6-longterm-debt-and-notes-payable-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfDebtTableTextBlock" xlink:label="us-gaap_ScheduleOfDebtTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfDebtTableTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-7-leases-tables" xlink:href="occ-20230131.xsd#statement-note-7-leases-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://http/20230131/role/statement-note-7-leases-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_LesseeLeaseLiabilityMaturityTableTextBlock" xlink:label="occ_LesseeLeaseLiabilityMaturityTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="occ_LesseeLeaseLiabilityMaturityTableTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-9-net-income-loss-per-share-tables" xlink:href="occ-20230131.xsd#statement-note-9-net-income-loss-per-share-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://http/20230131/role/statement-note-9-net-income-loss-per-share-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-11-revenue-recognition-tables" xlink:href="occ-20230131.xsd#statement-note-11-revenue-recognition-tables" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://http/20230131/role/statement-note-11-revenue-recognition-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock" xlink:label="us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-2-stock-incentive-plans-and-other-sharebased-compensation-details-textual" xlink:href="occ-20230131.xsd#statement-note-2-stock-incentive-plans-and-other-sharebased-compensation-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://http/20230131/role/statement-note-2-stock-incentive-plans-and-other-sharebased-compensation-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_EmployeesConsultantAndNonemployeeDirectorsMember" xlink:label="occ_EmployeesConsultantAndNonemployeeDirectorsMember" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_Plan2017Member" xlink:label="occ_Plan2017Member" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_TitleOfIndividualAxis" xlink:label="srt_TitleOfIndividualAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameAxis" xlink:label="us-gaap_PlanNameAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockMember" xlink:label="us-gaap_RestrictedStockMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:label="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_PlanNameAxis" xlink:to="us-gaap_PlanNameDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_PlanNameAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_PlanNameDomain" xlink:to="occ_Plan2017Member" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_PlanNameAxis" xlink:to="us-gaap_PlanNameDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_TitleOfIndividualAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="occ_EmployeesConsultantAndNonemployeeDirectorsMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_AwardTypeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_RestrictedStockMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain-default" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AllocatedShareBasedCompensationExpense" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-summary-of-changes-in-the-allowance-for-doubtful-accounts-for-trade-accounts-receivable-details" xlink:href="occ-20230131.xsd#statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-summary-of-changes-in-the-allowance-for-doubtful-accounts-for-trade-accounts-receivable-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://http/20230131/role/statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-summary-of-changes-in-the-allowance-for-doubtful-accounts-for-trade-accounts-receivable-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProvisionForDoubtfulAccounts" xlink:label="us-gaap_ProvisionForDoubtfulAccounts" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ProvisionForDoubtfulAccounts" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-4-inventories-components-of-inventories-details" xlink:href="occ-20230131.xsd#statement-note-4-inventories-components-of-inventories-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://http/20230131/role/statement-note-4-inventories-components-of-inventories-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:label="us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryRawMaterialsNetOfReserves" xlink:label="us-gaap_InventoryRawMaterialsNetOfReserves" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventorySuppliesNetOfReserves" xlink:label="us-gaap_InventorySuppliesNetOfReserves" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryWorkInProcessNetOfReserves" xlink:label="us-gaap_InventoryWorkInProcessNetOfReserves" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_InventoryWorkInProcessNetOfReserves" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_InventoryRawMaterialsNetOfReserves" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_InventorySuppliesNetOfReserves" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_InventoryNet" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-5-product-warranties-details-textual" xlink:href="occ-20230131.xsd#statement-note-5-product-warranties-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://http/20230131/role/statement-note-5-product-warranties-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesMember" xlink:label="us-gaap_AccountsPayableAndAccruedLiabilitiesMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="us-gaap_BalanceSheetLocationAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="us-gaap_BalanceSheetLocationDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="us-gaap_BalanceSheetLocationDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyAccrual" xlink:label="us-gaap_ProductWarrantyAccrual" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyExpense" xlink:label="us-gaap_ProductWarrantyExpense" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_BalanceSheetLocationAxis" xlink:to="us-gaap_BalanceSheetLocationDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_BalanceSheetLocationAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_BalanceSheetLocationDomain" xlink:to="us-gaap_AccountsPayableAndAccruedLiabilitiesMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_BalanceSheetLocationAxis" xlink:to="us-gaap_BalanceSheetLocationDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ProductWarrantyAccrual" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ProductWarrantyExpense" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-5-product-warranties-changes-in-accrual-for-product-warranties-details" xlink:href="occ-20230131.xsd#statement-note-5-product-warranties-changes-in-accrual-for-product-warranties-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://http/20230131/role/statement-note-5-product-warranties-changes-in-accrual-for-product-warranties-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyAccrual" xlink:label="us-gaap_ProductWarrantyAccrual" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyAccrualPayments" xlink:label="us-gaap_ProductWarrantyAccrualPayments" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyAccrualPreexistingIncreaseDecrease" xlink:label="us-gaap_ProductWarrantyAccrualPreexistingIncreaseDecrease" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyAccrualWarrantiesIssued" xlink:label="us-gaap_ProductWarrantyAccrualWarrantiesIssued" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ProductWarrantyAccrual" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ProductWarrantyAccrualWarrantiesIssued" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ProductWarrantyAccrualPayments" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ProductWarrantyAccrualPreexistingIncreaseDecrease" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-details-textual" xlink:href="occ-20230131.xsd#statement-note-6-longterm-debt-and-notes-payable-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_DebtInstrumentTermExtensions" xlink:label="occ_DebtInstrumentTermExtensions" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_LineOfCreditFacilityAdditionalCapacityForAdvances" xlink:label="occ_LineOfCreditFacilityAdditionalCapacityForAdvances" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_LineOfCreditFacilityPercentOfEligibleAccounts" xlink:label="occ_LineOfCreditFacilityPercentOfEligibleAccounts" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_LineOfCreditFacilityPercentOfEligibleInventory" xlink:label="occ_LineOfCreditFacilityPercentOfEligibleInventory" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_LineOfCreditFacilityRestrictedCapacityForAdvances" xlink:label="occ_LineOfCreditFacilityRestrictedCapacityForAdvances" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_NorthMillCapitalLlcMember" xlink:label="occ_NorthMillCapitalLlcMember" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_PinnacleFinancialPartnersMember" xlink:label="occ_PinnacleFinancialPartnersMember" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember" xlink:label="occ_VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember" xlink:label="srt_RangeMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember" xlink:label="srt_RangeMember-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityAxis" xlink:label="us-gaap_CreditFacilityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityDomain" xlink:label="us-gaap_CreditFacilityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityDomain" xlink:label="us-gaap_CreditFacilityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:label="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentInterestRateEffectivePercentage" xlink:label="us-gaap_DebtInstrumentInterestRateEffectivePercentage" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:label="us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCredit" xlink:label="us-gaap_LineOfCredit" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityAxis" xlink:label="us-gaap_LineOfCreditFacilityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityLenderDomain" xlink:label="us-gaap_LineOfCreditFacilityLenderDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityLenderDomain" xlink:label="us-gaap_LineOfCreditFacilityLenderDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:label="us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeAxis" xlink:label="us-gaap_LongtermDebtTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeDomain" xlink:label="us-gaap_LongtermDebtTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeDomain" xlink:label="us-gaap_LongtermDebtTypeDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PrimeRateMember" xlink:label="us-gaap_PrimeRateMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevolvingCreditFacilityMember" xlink:label="us-gaap_RevolvingCreditFacilityMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VariableRateAxis" xlink:label="us-gaap_VariableRateAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VariableRateDomain" xlink:label="us-gaap_VariableRateDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VariableRateDomain" xlink:label="us-gaap_VariableRateDomain-default" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_CreditFacilityAxis" xlink:to="us-gaap_CreditFacilityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="us-gaap_LongtermDebtTypeDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_VariableRateAxis" xlink:to="us-gaap_VariableRateDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_LineOfCreditFacilityAxis" xlink:to="us-gaap_LineOfCreditFacilityLenderDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_LineOfCreditFacilityAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LineOfCreditFacilityLenderDomain" xlink:to="occ_PinnacleFinancialPartnersMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_LineOfCreditFacilityAxis" xlink:to="us-gaap_LineOfCreditFacilityLenderDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_LongtermDebtTypeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LongtermDebtTypeDomain" xlink:to="occ_VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="us-gaap_LongtermDebtTypeDomain-default" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_CreditFacilityAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_CreditFacilityDomain" xlink:to="us-gaap_RevolvingCreditFacilityMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_CreditFacilityAxis" xlink:to="us-gaap_CreditFacilityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LineOfCreditFacilityLenderDomain" xlink:to="occ_NorthMillCapitalLlcMember" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_VariableRateAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_VariableRateDomain" xlink:to="us-gaap_PrimeRateMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_VariableRateAxis" xlink:to="us-gaap_VariableRateDomain-default" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_RangeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_RangeMember" xlink:to="srt_MaximumMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember-default" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="occ_LineOfCreditFacilityPercentOfEligibleAccounts" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="occ_LineOfCreditFacilityPercentOfEligibleInventory" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="occ_LineOfCreditFacilityAdditionalCapacityForAdvances" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="occ_LineOfCreditFacilityRestrictedCapacityForAdvances" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DebtInstrumentInterestRateEffectivePercentage" xlink:type="arc"/>
    <link:definitionArc order="9" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="occ_DebtInstrumentTermExtensions" xlink:type="arc"/>
    <link:definitionArc order="10" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LineOfCredit" xlink:type="arc"/>
    <link:definitionArc order="11" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details" xlink:href="occ-20230131.xsd#statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_NorthCarolinaRealEstateLoanMember" xlink:label="occ_NorthCarolinaRealEstateLoanMember" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_VirginiaRealEstateLoanMember" xlink:label="occ_VirginiaRealEstateLoanMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebt" xlink:label="us-gaap_LongTermDebt" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtCurrent" xlink:label="us-gaap_LongTermDebtCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtNoncurrent" xlink:label="us-gaap_LongTermDebtNoncurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeAxis" xlink:label="us-gaap_LongtermDebtTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeDomain" xlink:label="us-gaap_LongtermDebtTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeDomain" xlink:label="us-gaap_LongtermDebtTypeDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="us-gaap_LongtermDebtTypeDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_LongtermDebtTypeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LongtermDebtTypeDomain" xlink:to="occ_VirginiaRealEstateLoanMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="us-gaap_LongtermDebtTypeDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LongtermDebtTypeDomain" xlink:to="occ_NorthCarolinaRealEstateLoanMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LongTermDebt" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LongTermDebtCurrent" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LongTermDebtNoncurrent" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details-parentheticals" xlink:href="occ-20230131.xsd#statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details-parentheticals" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details-parentheticals" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_NorthCarolinaRealEstateLoanMember" xlink:label="occ_NorthCarolinaRealEstateLoanMember" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_VirginiaRealEstateLoanMember" xlink:label="occ_VirginiaRealEstateLoanMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentFaceAmount" xlink:label="us-gaap_DebtInstrumentFaceAmount" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:label="us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentMaturityDate" xlink:label="us-gaap_DebtInstrumentMaturityDate" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentPeriodicPayment" xlink:label="us-gaap_DebtInstrumentPeriodicPayment" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid" xlink:label="us-gaap_DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeAxis" xlink:label="us-gaap_LongtermDebtTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeDomain" xlink:label="us-gaap_LongtermDebtTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeDomain" xlink:label="us-gaap_LongtermDebtTypeDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="us-gaap_LongtermDebtTypeDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_LongtermDebtTypeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LongtermDebtTypeDomain" xlink:to="occ_VirginiaRealEstateLoanMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="us-gaap_LongtermDebtTypeDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LongtermDebtTypeDomain" xlink:to="occ_NorthCarolinaRealEstateLoanMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DebtInstrumentFaceAmount" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DebtInstrumentPeriodicPayment" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DebtInstrumentMaturityDate" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-7-leases-details-textual" xlink:href="occ-20230131.xsd#statement-note-7-leases-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://http/20230131/role/statement-note-7-leases-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_AccountsPayableAndAccruedLiabilitiesCurrentMember" xlink:label="occ_AccountsPayableAndAccruedLiabilitiesCurrentMember" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_OperatingLeaseForOfficeEquipmentMember" xlink:label="occ_OperatingLeaseForOfficeEquipmentMember" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_OperatingLeaseForOfficeManufacturingAndWarehouseSpaceInPlanoTexasMember" xlink:label="occ_OperatingLeaseForOfficeManufacturingAndWarehouseSpaceInPlanoTexasMember" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_OperatingLeaseForWarehouseSpaceInRoanokeVirginiaMember" xlink:label="occ_OperatingLeaseForWarehouseSpaceInRoanokeVirginiaMember" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_OperatingLeaseRightofUseAssetReduction" xlink:label="occ_OperatingLeaseRightofUseAssetReduction" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesMember" xlink:label="us-gaap_AccountsPayableAndAccruedLiabilitiesMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AreaOfRealEstateProperty" xlink:label="us-gaap_AreaOfRealEstateProperty" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="us-gaap_BalanceSheetLocationAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="us-gaap_BalanceSheetLocationDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="us-gaap_BalanceSheetLocationDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseInterestExpense" xlink:label="us-gaap_FinanceLeaseInterestExpense" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityCurrent" xlink:label="us-gaap_FinanceLeaseLiabilityCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityNoncurrent" xlink:label="us-gaap_FinanceLeaseLiabilityNoncurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeasePrincipalPayments" xlink:label="us-gaap_FinanceLeasePrincipalPayments" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseRightOfUseAsset" xlink:label="us-gaap_FinanceLeaseRightOfUseAsset" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseRightOfUseAssetAmortization" xlink:label="us-gaap_FinanceLeaseRightOfUseAssetAmortization" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseContractualTermAxis" xlink:label="us-gaap_LeaseContractualTermAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseContractualTermDomain" xlink:label="us-gaap_LeaseContractualTermDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseContractualTermDomain" xlink:label="us-gaap_LeaseContractualTermDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeFinanceLeaseDiscountRate" xlink:label="us-gaap_LesseeFinanceLeaseDiscountRate" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeFinanceLeaseRemainingLeaseTerm" xlink:label="us-gaap_LesseeFinanceLeaseRemainingLeaseTerm" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseTermOfContract" xlink:label="us-gaap_LesseeOperatingLeaseTermOfContract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseExpense" xlink:label="us-gaap_OperatingLeaseExpense" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeasePayments" xlink:label="us-gaap_OperatingLeasePayments" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:label="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:label="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherAssetsMember" xlink:label="us-gaap_OtherAssetsMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherNoncurrentLiabilitiesMember" xlink:label="us-gaap_OtherNoncurrentLiabilitiesMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:label="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_BalanceSheetLocationAxis" xlink:to="us-gaap_BalanceSheetLocationDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_LeaseContractualTermAxis" xlink:to="us-gaap_LeaseContractualTermDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_LeaseContractualTermAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LeaseContractualTermDomain" xlink:to="occ_OperatingLeaseForOfficeManufacturingAndWarehouseSpaceInPlanoTexasMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_LeaseContractualTermAxis" xlink:to="us-gaap_LeaseContractualTermDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LeaseContractualTermDomain" xlink:to="occ_OperatingLeaseForWarehouseSpaceInRoanokeVirginiaMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_LeaseContractualTermDomain" xlink:to="occ_OperatingLeaseForOfficeEquipmentMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_BalanceSheetLocationAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_BalanceSheetLocationDomain" xlink:to="us-gaap_OtherAssetsMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_BalanceSheetLocationAxis" xlink:to="us-gaap_BalanceSheetLocationDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_BalanceSheetLocationDomain" xlink:to="us-gaap_AccountsPayableAndAccruedLiabilitiesMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_BalanceSheetLocationDomain" xlink:to="us-gaap_OtherNoncurrentLiabilitiesMember" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_BalanceSheetLocationDomain" xlink:to="occ_AccountsPayableAndAccruedLiabilitiesCurrentMember" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AreaOfRealEstateProperty" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeOperatingLeaseTermOfContract" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseExpense" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:type="arc"/>
    <link:definitionArc order="9" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeasePayments" xlink:type="arc"/>
    <link:definitionArc order="10" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:type="arc"/>
    <link:definitionArc order="11" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="occ_OperatingLeaseRightofUseAssetReduction" xlink:type="arc"/>
    <link:definitionArc order="12" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseRightOfUseAsset" xlink:type="arc"/>
    <link:definitionArc order="13" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseLiabilityCurrent" xlink:type="arc"/>
    <link:definitionArc order="14" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseLiabilityNoncurrent" xlink:type="arc"/>
    <link:definitionArc order="15" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseInterestExpense" xlink:type="arc"/>
    <link:definitionArc order="16" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseRightOfUseAssetAmortization" xlink:type="arc"/>
    <link:definitionArc order="17" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeFinanceLeaseRemainingLeaseTerm" xlink:type="arc"/>
    <link:definitionArc order="18" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeFinanceLeaseDiscountRate" xlink:type="arc"/>
    <link:definitionArc order="19" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeasePrincipalPayments" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-7-leases-future-payments-due-details" xlink:href="occ-20230131.xsd#statement-note-7-leases-future-payments-due-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://http/20230131/role/statement-note-7-leases-future-payments-due-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiability" xlink:label="us-gaap_FinanceLeaseLiability" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount" xlink:label="us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiability" xlink:label="us-gaap_OperatingLeaseLiability" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:type="arc"/>
    <link:definitionArc order="4" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo" xlink:type="arc"/>
    <link:definitionArc order="5" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:type="arc"/>
    <link:definitionArc order="6" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree" xlink:type="arc"/>
    <link:definitionArc order="7" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:type="arc"/>
    <link:definitionArc order="8" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour" xlink:type="arc"/>
    <link:definitionArc order="9" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:type="arc"/>
    <link:definitionArc order="10" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:type="arc"/>
    <link:definitionArc order="11" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:type="arc"/>
    <link:definitionArc order="12" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount" xlink:type="arc"/>
    <link:definitionArc order="13" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseLiability" xlink:type="arc"/>
    <link:definitionArc order="14" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseLiability" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-9-net-income-loss-per-share-details-textual" xlink:href="occ-20230131.xsd#statement-note-9-net-income-loss-per-share-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://http/20230131/role/statement-note-9-net-income-loss-per-share-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-9-net-income-loss-per-share-components-of-reconciliation-of-numerators-and-denominators-net-loss-per-share-details" xlink:href="occ-20230131.xsd#statement-note-9-net-income-loss-per-share-components-of-reconciliation-of-numerators-and-denominators-net-loss-per-share-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://http/20230131/role/statement-note-9-net-income-loss-per-share-components-of-reconciliation-of-numerators-and-denominators-net-loss-per-share-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareBasic" xlink:label="us-gaap_EarningsPerShareBasic" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetIncomeLoss" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EarningsPerShareBasic" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-10-segment-information-and-business-and-credit-concentrations-details-textual" xlink:href="occ-20230131.xsd#statement-note-10-segment-information-and-business-and-credit-concentrations-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://http/20230131/role/statement-note-10-segment-information-and-business-and-credit-concentrations-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_ConcentrationRiskNumberOfCustomers" xlink:label="occ_ConcentrationRiskNumberOfCustomers" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_CustomerOneMember" xlink:label="occ_CustomerOneMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MajorCustomersAxis" xlink:label="srt_MajorCustomersAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_NameOfMajorCustomerDomain" xlink:label="srt_NameOfMajorCustomerDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_NameOfMajorCustomerDomain" xlink:label="srt_NameOfMajorCustomerDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="us-gaap_ConcentrationRiskByTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="us-gaap_ConcentrationRiskPercentage1" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="us-gaap_CustomerConcentrationRiskMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SalesRevenueNetMember" xlink:label="us-gaap_SalesRevenueNetMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_MajorCustomersAxis" xlink:to="srt_NameOfMajorCustomerDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskTypeDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="us-gaap_SalesRevenueNetMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_ConcentrationRiskByTypeAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_ConcentrationRiskTypeDomain" xlink:to="us-gaap_CustomerConcentrationRiskMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskTypeDomain-default" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_MajorCustomersAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_NameOfMajorCustomerDomain" xlink:to="occ_CustomerOneMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_MajorCustomersAxis" xlink:to="srt_NameOfMajorCustomerDomain-default" xlink:type="arc"/>
    <link:definitionArc order="3" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ConcentrationRiskPercentage1" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="occ_ConcentrationRiskNumberOfCustomers" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-11-revenue-recognition-details-textual" xlink:href="occ-20230131.xsd#statement-note-11-revenue-recognition-details-textual" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://http/20230131/role/statement-note-11-revenue-recognition-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerLiability" xlink:label="us-gaap_ContractWithCustomerLiability" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerRefundLiability" xlink:label="us-gaap_ContractWithCustomerRefundLiability" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ContractWithCustomerLiability" xlink:type="arc"/>
    <link:definitionArc order="2" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ContractWithCustomerRefundLiability" xlink:type="arc"/>
  </link:definitionLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-11-revenue-recognition-revenue-attributed-to-united-states-and-all-other-countries-details" xlink:href="occ-20230131.xsd#statement-note-11-revenue-recognition-revenue-attributed-to-united-states-and-all-other-countries-details" xlink:type="simple"/>
  <link:definitionLink xlink:role="http://http/20230131/role/statement-note-11-revenue-recognition-revenue-attributed-to-united-states-and-all-other-countries-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_US" xlink:label="country_US" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain-default" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NonUsMember" xlink:label="us-gaap_NonUsMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-domain" xlink:from="srt_StatementGeographicalAxis" xlink:to="srt_SegmentGeographicalDomain" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="srt_StatementGeographicalAxis" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_SegmentGeographicalDomain" xlink:to="country_US" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="srt_StatementGeographicalAxis" xlink:to="srt_SegmentGeographicalDomain-default" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="srt_SegmentGeographicalDomain" xlink:to="us-gaap_NonUsMember" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/hypercube-dimension" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/dimension-default" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain-default" xlink:type="arc"/>
    <link:definitionArc order="0" xbrldt:closed="true" xbrldt:contextElement="segment" xlink:arcrole="http://xbrl.org/int/dim/arcrole/all" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:definitionArc order="1" xbrldt:closed="true" xlink:arcrole="http://xbrl.org/int/dim/arcrole/domain-member" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:type="arc"/>
  </link:definitionLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.LAB
<SEQUENCE>10
<FILENAME>occ-20230131_lab.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION LABEL LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
<!--Generated by ThunderDome XBRL - 06:09PM UTC 2023-03-10--><link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedLabel" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedPeriodEndLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodEndLabel" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedPeriodStartLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedPeriodStartLabel" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTotalLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTotalLabel" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedTerseLabel" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/negatedNetLabel" xlink:href="http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd#negatedNetLabel" xlink:type="simple"/>
  <link:roleRef roleURI="http://www.xbrl.org/2009/role/netLabel" xlink:href="http://www.xbrl.org/lrr/role/net-2009-12-16.xsd#netLabel" xlink:type="simple"/>
  <link:labelLink xlink:role="http://www.xbrl.org/2003/role/link" xlink:type="extended">
    <link:loc xlink:href="occ-20230131.xsd#occ_DocumentAndEntityInformation" xlink:label="occ_DocumentAndEntityInformation" xlink:type="locator"/>
    <link:label xlink:label="occ_DocumentAndEntityInformation-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document And Entity Information</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="occ_DocumentAndEntityInformation" xlink:to="occ_DocumentAndEntityInformation-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherReceivables" xlink:label="us-gaap_OtherReceivables" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OtherReceivables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other receivables</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherReceivables" xlink:to="us-gaap_OtherReceivables-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherIncomeAndExpensesAbstract" xlink:label="us-gaap_OtherIncomeAndExpensesAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OtherIncomeAndExpensesAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other income (expense), net:</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherIncomeAndExpensesAbstract" xlink:to="us-gaap_OtherIncomeAndExpensesAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_NoteToFinancialStatementDetailsTextual" xlink:label="occ_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:label xlink:label="occ_NoteToFinancialStatementDetailsTextual-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note To Financial Statement Details Textual</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="occ_NoteToFinancialStatementDetailsTextual" xlink:to="occ_NoteToFinancialStatementDetailsTextual-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths</link:label>
    <link:label xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2023, operating lease</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths-label" xlink:type="arc"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_statement-statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-tables" xlink:label="occ_statement-statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-tables" xlink:type="locator"/>
    <link:label xlink:label="occ_statement-statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-tables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 3 - Allowance for Doubtful Accounts for Trade Accounts Receivable</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="occ_statement-statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-tables" xlink:to="occ_statement-statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-tables-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo</link:label>
    <link:label xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2024, operating lease</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo-label" xlink:type="arc"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_statement-statement-note-4-inventories-tables" xlink:label="occ_statement-statement-note-4-inventories-tables" xlink:type="locator"/>
    <link:label xlink:label="occ_statement-statement-note-4-inventories-tables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 4 - Inventories</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="occ_statement-statement-note-4-inventories-tables" xlink:to="occ_statement-statement-note-4-inventories-tables-label" xlink:type="arc"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_statement-statement-note-5-product-warranties-tables" xlink:label="occ_statement-statement-note-5-product-warranties-tables" xlink:type="locator"/>
    <link:label xlink:label="occ_statement-statement-note-5-product-warranties-tables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 5 - Product Warranties</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="occ_statement-statement-note-5-product-warranties-tables" xlink:to="occ_statement-statement-note-5-product-warranties-tables-label" xlink:type="arc"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_statement-statement-note-6-longterm-debt-and-notes-payable-tables" xlink:label="occ_statement-statement-note-6-longterm-debt-and-notes-payable-tables" xlink:type="locator"/>
    <link:label xlink:label="occ_statement-statement-note-6-longterm-debt-and-notes-payable-tables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 6 - Long-term Debt and Notes Payable</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="occ_statement-statement-note-6-longterm-debt-and-notes-payable-tables" xlink:to="occ_statement-statement-note-6-longterm-debt-and-notes-payable-tables-label" xlink:type="arc"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_statement-statement-note-7-leases-tables" xlink:label="occ_statement-statement-note-7-leases-tables" xlink:type="locator"/>
    <link:label xlink:label="occ_statement-statement-note-7-leases-tables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 7 - Leases</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="occ_statement-statement-note-7-leases-tables" xlink:to="occ_statement-statement-note-7-leases-tables-label" xlink:type="arc"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_statement-statement-note-9-net-income-loss-per-share-tables" xlink:label="occ_statement-statement-note-9-net-income-loss-per-share-tables" xlink:type="locator"/>
    <link:label xlink:label="occ_statement-statement-note-9-net-income-loss-per-share-tables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 9 - Net Income (Loss) Per Share</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="occ_statement-statement-note-9-net-income-loss-per-share-tables" xlink:to="occ_statement-statement-note-9-net-income-loss-per-share-tables-label" xlink:type="arc"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_statement-statement-note-11-revenue-recognition-tables" xlink:label="occ_statement-statement-note-11-revenue-recognition-tables" xlink:type="locator"/>
    <link:label xlink:label="occ_statement-statement-note-11-revenue-recognition-tables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 11 - Revenue Recognition</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="occ_statement-statement-note-11-revenue-recognition-tables" xlink:to="occ_statement-statement-note-11-revenue-recognition-tables-label" xlink:type="arc"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_statement-statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-summary-of-changes-in-the-allowance-for-doubtful-accounts-for-trade-accounts-receivable-details" xlink:label="occ_statement-statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-summary-of-changes-in-the-allowance-for-doubtful-accounts-for-trade-accounts-receivable-details" xlink:type="locator"/>
    <link:label xlink:label="occ_statement-statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-summary-of-changes-in-the-allowance-for-doubtful-accounts-for-trade-accounts-receivable-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 3 - Allowance for Doubtful Accounts for Trade Accounts Receivable - Summary of Changes in the Allowance for Doubtful Accounts for Trade Accounts Receivable (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="occ_statement-statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-summary-of-changes-in-the-allowance-for-doubtful-accounts-for-trade-accounts-receivable-details" xlink:to="occ_statement-statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-summary-of-changes-in-the-allowance-for-doubtful-accounts-for-trade-accounts-receivable-details-label" xlink:type="arc"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_statement-statement-note-4-inventories-components-of-inventories-details" xlink:label="occ_statement-statement-note-4-inventories-components-of-inventories-details" xlink:type="locator"/>
    <link:label xlink:label="occ_statement-statement-note-4-inventories-components-of-inventories-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 4 - Inventories - Components of Inventories (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="occ_statement-statement-note-4-inventories-components-of-inventories-details" xlink:to="occ_statement-statement-note-4-inventories-components-of-inventories-details-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermLineOfCredit" xlink:label="us-gaap_LongTermLineOfCredit" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LongTermLineOfCredit-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note payable, revolver - noncurrent</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermLineOfCredit" xlink:to="us-gaap_LongTermLineOfCredit-label" xlink:type="arc"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_statement-statement-note-5-product-warranties-changes-in-accrual-for-product-warranties-details" xlink:label="occ_statement-statement-note-5-product-warranties-changes-in-accrual-for-product-warranties-details" xlink:type="locator"/>
    <link:label xlink:label="occ_statement-statement-note-5-product-warranties-changes-in-accrual-for-product-warranties-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 5 - Product Warranties - Changes in Accrual for Product Warranties (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="occ_statement-statement-note-5-product-warranties-changes-in-accrual-for-product-warranties-details" xlink:to="occ_statement-statement-note-5-product-warranties-changes-in-accrual-for-product-warranties-details-label" xlink:type="arc"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_statement-statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details" xlink:label="occ_statement-statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details" xlink:type="locator"/>
    <link:label xlink:label="occ_statement-statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 6 - Long-term Debt and Notes Payable - Long-term Debt (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="occ_statement-statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details" xlink:to="occ_statement-statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details-label" xlink:type="arc"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_statement-statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details-parentheticals" xlink:label="occ_statement-statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details-parentheticals" xlink:type="locator"/>
    <link:label xlink:label="occ_statement-statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details-parentheticals-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 6 - Long-term Debt and Notes Payable - Long-term Debt (Details) (Parentheticals)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="occ_statement-statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details-parentheticals" xlink:to="occ_statement-statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details-parentheticals-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="us-gaap_OtherAssetsNoncurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OtherAssetsNoncurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other assets, net</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherAssetsNoncurrent" xlink:to="us-gaap_OtherAssetsNoncurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensation" xlink:label="us-gaap_ShareBasedCompensation" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensation-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ShareBasedCompensation</link:label>
    <link:label xlink:label="us-gaap_ShareBasedCompensation-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share-based compensation expense</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensation" xlink:to="us-gaap_ShareBasedCompensation-label" xlink:type="arc"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_statement-statement-note-7-leases-future-payments-due-details" xlink:label="occ_statement-statement-note-7-leases-future-payments-due-details" xlink:type="locator"/>
    <link:label xlink:label="occ_statement-statement-note-7-leases-future-payments-due-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 7 - Leases - Future Payments Due (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="occ_statement-statement-note-7-leases-future-payments-due-details" xlink:to="occ_statement-statement-note-7-leases-future-payments-due-details-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesCurrent" xlink:label="us-gaap_LiabilitiesCurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LiabilitiesCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_LiabilitiesCurrent</link:label>
    <link:label xlink:label="us-gaap_LiabilitiesCurrent-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total current liabilities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesCurrent" xlink:to="us-gaap_LiabilitiesCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_statement-statement-note-9-net-income-loss-per-share-components-of-reconciliation-of-numerators-and-denominators-net-loss-per-share-details" xlink:label="occ_statement-statement-note-9-net-income-loss-per-share-components-of-reconciliation-of-numerators-and-denominators-net-loss-per-share-details" xlink:type="locator"/>
    <link:label xlink:label="occ_statement-statement-note-9-net-income-loss-per-share-components-of-reconciliation-of-numerators-and-denominators-net-loss-per-share-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 9 - Net Income (Loss) Per Share - Components of Reconciliation of Numerators and Denominators Net Loss Per Share (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="occ_statement-statement-note-9-net-income-loss-per-share-components-of-reconciliation-of-numerators-and-denominators-net-loss-per-share-details" xlink:to="occ_statement-statement-note-9-net-income-loss-per-share-components-of-reconciliation-of-numerators-and-denominators-net-loss-per-share-details-label" xlink:type="arc"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_statement-statement-note-11-revenue-recognition-revenue-attributed-to-united-states-and-all-other-countries-details" xlink:label="occ_statement-statement-note-11-revenue-recognition-revenue-attributed-to-united-states-and-all-other-countries-details" xlink:type="locator"/>
    <link:label xlink:label="occ_statement-statement-note-11-revenue-recognition-revenue-attributed-to-united-states-and-all-other-countries-details-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Note 11 - Revenue Recognition - Revenue Attributed to United States and All Other Countries (Details)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="occ_statement-statement-note-11-revenue-recognition-revenue-attributed-to-united-states-and-all-other-countries-details" xlink:to="occ_statement-statement-note-11-revenue-recognition-revenue-attributed-to-united-states-and-all-other-countries-details-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfDebtTableTextBlock" xlink:label="us-gaap_ScheduleOfDebtTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfDebtTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Debt [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfDebtTableTextBlock" xlink:to="us-gaap_ScheduleOfDebtTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_NotesToFinancialStatements" xlink:label="occ_NotesToFinancialStatements" xlink:type="locator"/>
    <link:label xlink:label="occ_NotesToFinancialStatements-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Notes To Financial Statements</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="occ_NotesToFinancialStatements" xlink:to="occ_NotesToFinancialStatements-label" xlink:type="arc"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_NotesToFinancialStatementsAbstract" xlink:label="occ_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:label xlink:label="occ_NotesToFinancialStatementsAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Notes To Financial Statements [Abstract]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="occ_NotesToFinancialStatementsAbstract" xlink:to="occ_NotesToFinancialStatementsAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseTermOfContract" xlink:label="us-gaap_LesseeOperatingLeaseTermOfContract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LesseeOperatingLeaseTermOfContract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_LesseeOperatingLeaseTermOfContract</link:label>
    <link:label xlink:label="us-gaap_LesseeOperatingLeaseTermOfContract-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Lessee, Operating Lease, Term of Contract (Month)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseTermOfContract" xlink:to="us-gaap_LesseeOperatingLeaseTermOfContract-label" xlink:type="arc"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_LesseeOperatingAndFinanceLeasesDisclosureTextBlock" xlink:label="occ_LesseeOperatingAndFinanceLeasesDisclosureTextBlock" xlink:type="locator"/>
    <link:label xlink:label="occ_LesseeOperatingAndFinanceLeasesDisclosureTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessee, Operating and Finance Leases Disclosure [Text Block]</link:label>
    <link:label xlink:label="occ_LesseeOperatingAndFinanceLeasesDisclosureTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">The entire disclosure for operating and finance leases of lessee. Includes, but is not limited to, description of lessee's operating and finance lease and maturity analysis of operating and finance lease liability.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="occ_LesseeOperatingAndFinanceLeasesDisclosureTextBlock" xlink:to="occ_LesseeOperatingAndFinanceLeasesDisclosureTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="us-gaap_DepreciationDepletionAndAmortization" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DepreciationDepletionAndAmortization-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Depreciation and amortization</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DepreciationDepletionAndAmortization" xlink:to="us-gaap_DepreciationDepletionAndAmortization-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:label="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation</link:label>
    <link:label xlink:label="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share-Based Payment Arrangement, Shares Withheld for Tax Withholding Obligation</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:to="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtCurrent" xlink:label="us-gaap_LongTermDebtCurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LongTermDebtCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_LongTermDebtCurrent</link:label>
    <link:label xlink:label="us-gaap_LongTermDebtCurrent-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Less current installments</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtCurrent" xlink:to="us-gaap_LongTermDebtCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LoansPayableCurrent" xlink:label="us-gaap_LoansPayableCurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LoansPayableCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Current installments of long-term debt</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LoansPayableCurrent" xlink:to="us-gaap_LoansPayableCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsCurrent" xlink:label="us-gaap_AssetsCurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AssetsCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_AssetsCurrent</link:label>
    <link:label xlink:label="us-gaap_AssetsCurrent-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total current assets</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsCurrent" xlink:to="us-gaap_AssetsCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeFinanceLeaseDiscountRate" xlink:label="us-gaap_LesseeFinanceLeaseDiscountRate" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LesseeFinanceLeaseDiscountRate-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_LesseeFinanceLeaseDiscountRate</link:label>
    <link:label xlink:label="us-gaap_LesseeFinanceLeaseDiscountRate-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Lessee, Finance Lease, Discount Rate</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeFinanceLeaseDiscountRate" xlink:to="us-gaap_LesseeFinanceLeaseDiscountRate-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest</link:label>
    <link:label xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total shareholders&#8217; equity</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:to="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest-label" xlink:type="arc"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_OperatingLeaseForOfficeEquipmentMember" xlink:label="occ_OperatingLeaseForOfficeEquipmentMember" xlink:type="locator"/>
    <link:label xlink:label="occ_OperatingLeaseForOfficeEquipmentMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Lease For Office Equipment [Member]</link:label>
    <link:label xlink:label="occ_OperatingLeaseForOfficeEquipmentMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents operating lease for office equipment.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="occ_OperatingLeaseForOfficeEquipmentMember" xlink:to="occ_OperatingLeaseForOfficeEquipmentMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockValue" xlink:label="us-gaap_CommonStockValue" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CommonStockValue-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Common stock, no par value, authorized 50,000,000 shares; issued and outstanding 7,868,568 shares at January 31, 2023 and 7,893,194 shares at October 31, 2022</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockValue" xlink:to="us-gaap_CommonStockValue-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Adjustments to reconcile net income (loss) to net cash used in operating activities:</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="us-gaap_CommonStockSharesAuthorized" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CommonStockSharesAuthorized-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_CommonStockSharesAuthorized</link:label>
    <link:label xlink:label="us-gaap_CommonStockSharesAuthorized-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Common Stock, Shares Authorized (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockSharesAuthorized" xlink:to="us-gaap_CommonStockSharesAuthorized-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent" xlink:label="us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounts payable and accrued expenses</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent" xlink:to="us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesIssued" xlink:label="us-gaap_CommonStockSharesIssued" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CommonStockSharesIssued-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_CommonStockSharesIssued</link:label>
    <link:label xlink:label="us-gaap_CommonStockSharesIssued-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Common Stock, Shares, Issued (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockSharesIssued" xlink:to="us-gaap_CommonStockSharesIssued-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockNoParValue" xlink:label="us-gaap_CommonStockNoParValue" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CommonStockNoParValue-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_CommonStockNoParValue</link:label>
    <link:label xlink:label="us-gaap_CommonStockNoParValue-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Common Stock, No Par Value (in dollars per share)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockNoParValue" xlink:to="us-gaap_CommonStockNoParValue-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TaxesPayableCurrent" xlink:label="us-gaap_TaxesPayableCurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_TaxesPayableCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income taxes payable</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TaxesPayableCurrent" xlink:to="us-gaap_TaxesPayableCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:label="us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_EmployeeRelatedLiabilitiesCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accrued compensation and payroll taxes</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:to="us-gaap_EmployeeRelatedLiabilitiesCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember" xlink:label="srt_RangeMember" xlink:type="locator"/>
    <link:label xlink:label="srt_RangeMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statistical Measurement [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_RangeMember" xlink:to="srt_RangeMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeasePayments" xlink:label="us-gaap_OperatingLeasePayments" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OperatingLeasePayments-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_OperatingLeasePayments</link:label>
    <link:label xlink:label="us-gaap_OperatingLeasePayments-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating Lease, Payments</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeasePayments" xlink:to="us-gaap_OperatingLeasePayments-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" xlink:type="locator"/>
    <link:label xlink:label="srt_MaximumMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Maximum [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_MaximumMember" xlink:to="srt_MaximumMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevolvingCreditFacilityMember" xlink:label="us-gaap_RevolvingCreditFacilityMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RevolvingCreditFacilityMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revolving Credit Facility [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevolvingCreditFacilityMember" xlink:to="us-gaap_RevolvingCreditFacilityMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" xlink:type="locator"/>
    <link:label xlink:label="srt_RangeAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statistical Measurement [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_RangeAxis" xlink:to="srt_RangeAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityAxis" xlink:label="us-gaap_CreditFacilityAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CreditFacilityAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Credit Facility [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CreditFacilityAxis" xlink:to="us-gaap_CreditFacilityAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockValue" xlink:label="us-gaap_PreferredStockValue" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PreferredStockValue-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Preferred stock, no par value, authorized 1,000,000 shares; none issued and outstanding</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockValue" xlink:to="us-gaap_PreferredStockValue-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityDomain" xlink:label="us-gaap_CreditFacilityDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CreditFacilityDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Credit Facility [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CreditFacilityDomain" xlink:to="us-gaap_CreditFacilityDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockSharesIssued" xlink:label="us-gaap_PreferredStockSharesIssued" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PreferredStockSharesIssued-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_PreferredStockSharesIssued</link:label>
    <link:label xlink:label="us-gaap_PreferredStockSharesIssued-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Preferred Stock, Shares Issued (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockSharesIssued" xlink:to="us-gaap_PreferredStockSharesIssued-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PolicyTextBlockAbstract" xlink:label="us-gaap_PolicyTextBlockAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PolicyTextBlockAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_PolicyTextBlockAbstract</link:label>
    <link:label xlink:label="us-gaap_PolicyTextBlockAbstract-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accounting Policies</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PolicyTextBlockAbstract" xlink:to="us-gaap_PolicyTextBlockAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockNoParValue" xlink:label="us-gaap_PreferredStockNoParValue" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PreferredStockNoParValue-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_PreferredStockNoParValue</link:label>
    <link:label xlink:label="us-gaap_PreferredStockNoParValue-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Preferred Stock, No Par Value (in dollars per share)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockNoParValue" xlink:to="us-gaap_PreferredStockNoParValue-label" xlink:type="arc"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_RoyaltyRevenueExpense" xlink:label="occ_RoyaltyRevenueExpense" xlink:type="locator"/>
    <link:label xlink:label="occ_RoyaltyRevenueExpense-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">occ_RoyaltyRevenueExpense</link:label>
    <link:label xlink:label="occ_RoyaltyRevenueExpense-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Royalty expense, net</link:label>
    <link:label xlink:label="occ_RoyaltyRevenueExpense-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Net amount of revenue (expense) recognized during the period related to royalty transactions.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="occ_RoyaltyRevenueExpense" xlink:to="occ_RoyaltyRevenueExpense-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis" xlink:type="locator"/>
    <link:label xlink:label="srt_StatementGeographicalAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Geographical [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_StatementGeographicalAxis" xlink:to="srt_StatementGeographicalAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain" xlink:type="locator"/>
    <link:label xlink:label="srt_SegmentGeographicalDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Geographical [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_SegmentGeographicalDomain" xlink:to="srt_SegmentGeographicalDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockSharesAuthorized" xlink:label="us-gaap_PreferredStockSharesAuthorized" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PreferredStockSharesAuthorized-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_PreferredStockSharesAuthorized</link:label>
    <link:label xlink:label="us-gaap_PreferredStockSharesAuthorized-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Preferred Stock, Shares Authorized (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockSharesAuthorized" xlink:to="us-gaap_PreferredStockSharesAuthorized-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_InventoryNet-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Inventories</link:label>
    <link:label xlink:label="us-gaap_InventoryNet-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryNet" xlink:to="us-gaap_InventoryNet-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant</link:label>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Available for Grant</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net sales</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:to="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquireIntangibleAssets" xlink:label="us-gaap_PaymentsToAcquireIntangibleAssets" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PaymentsToAcquireIntangibleAssets-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_PaymentsToAcquireIntangibleAssets</link:label>
    <link:label xlink:label="us-gaap_PaymentsToAcquireIntangibleAssets-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Investment in intangible assets</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsToAcquireIntangibleAssets" xlink:to="us-gaap_PaymentsToAcquireIntangibleAssets-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_PaymentsToAcquirePropertyPlantAndEquipment</link:label>
    <link:label xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Purchase of and deposits for the purchase of property and equipment</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment-label" xlink:type="arc"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_OperatingLeaseRightofUseAssetReduction" xlink:label="occ_OperatingLeaseRightofUseAssetReduction" xlink:type="locator"/>
    <link:label xlink:label="occ_OperatingLeaseRightofUseAssetReduction-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">occ_OperatingLeaseRightofUseAssetReduction</link:label>
    <link:label xlink:label="occ_OperatingLeaseRightofUseAssetReduction-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating Lease, Right-of-Use Asset, Reduction</link:label>
    <link:label xlink:label="occ_OperatingLeaseRightofUseAssetReduction-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Amount of reduction in right of use assets of operating lease.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="occ_OperatingLeaseRightofUseAssetReduction" xlink:to="occ_OperatingLeaseRightofUseAssetReduction-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MajorCustomersAxis" xlink:label="srt_MajorCustomersAxis" xlink:type="locator"/>
    <link:label xlink:label="srt_MajorCustomersAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Customer [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_MajorCustomersAxis" xlink:to="srt_MajorCustomersAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_NameOfMajorCustomerDomain" xlink:label="srt_NameOfMajorCustomerDomain" xlink:type="locator"/>
    <link:label xlink:label="srt_NameOfMajorCustomerDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Customer [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_NameOfMajorCustomerDomain" xlink:to="srt_NameOfMajorCustomerDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyAccrualPayments" xlink:label="us-gaap_ProductWarrantyAccrualPayments" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ProductWarrantyAccrualPayments-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ProductWarrantyAccrualPayments</link:label>
    <link:label xlink:label="us-gaap_ProductWarrantyAccrualPayments-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Warranty claims and costs paid during the period</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProductWarrantyAccrualPayments" xlink:to="us-gaap_ProductWarrantyAccrualPayments-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="us-gaap_LiabilitiesCurrentAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LiabilitiesCurrentAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Current liabilities:</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_LiabilitiesCurrentAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyAccrualWarrantiesIssued" xlink:label="us-gaap_ProductWarrantyAccrualWarrantiesIssued" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ProductWarrantyAccrualWarrantiesIssued-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Liabilities accrued for warranties issued during the period</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProductWarrantyAccrualWarrantiesIssued" xlink:to="us-gaap_ProductWarrantyAccrualWarrantiesIssued-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Assets" xlink:label="us-gaap_Assets" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_Assets-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_Assets</link:label>
    <link:label xlink:label="us-gaap_Assets-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total assets</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Assets" xlink:to="us-gaap_Assets-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyAccrualPreexistingIncreaseDecrease" xlink:label="us-gaap_ProductWarrantyAccrualPreexistingIncreaseDecrease" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ProductWarrantyAccrualPreexistingIncreaseDecrease-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Changes in liability for pre-existing warranties during the period</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProductWarrantyAccrualPreexistingIncreaseDecrease" xlink:to="us-gaap_ProductWarrantyAccrualPreexistingIncreaseDecrease-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameAxis" xlink:label="us-gaap_PlanNameAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PlanNameAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Plan Name [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PlanNameAxis" xlink:to="us-gaap_PlanNameAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PlanNameDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Plan Name [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PlanNameDomain" xlink:to="us-gaap_PlanNameDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash flows from operating activities:</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized</link:label>
    <link:label xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount, Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseExpense" xlink:label="us-gaap_OperatingLeaseExpense" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OperatingLeaseExpense-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_OperatingLeaseExpense</link:label>
    <link:label xlink:label="us-gaap_OperatingLeaseExpense-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating Lease, Expense</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseExpense" xlink:to="us-gaap_OperatingLeaseExpense-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1</link:label>
    <link:label xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition (Year)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StatementLineItems-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statement [Line Items]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StatementLineItems-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent</link:label>
    <link:label xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accounts Receivable, Allowance for Credit Loss, Current</link:label>
    <link:label xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent-label" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Balance at beginning of period</link:label>
    <link:label xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent-label" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Balance at end of period</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="us-gaap_AccountsReceivableNetCurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AccountsReceivableNetCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Trade accounts receivable, net of allowance for doubtful accounts of $59,856 at January 31, 2023 and $69,643 at October 31, 2022</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsReceivableNetCurrent" xlink:to="us-gaap_AccountsReceivableNetCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Share-Based Payment Arrangement [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:to="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation</link:label>
    <link:label xlink:label="us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share-Based Payment Arrangement, Decrease for Tax Withholding Obligation</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:to="us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquityAbstract" xlink:label="us-gaap_StockholdersEquityAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StockholdersEquityAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Shareholders&#8217; equity:</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_StockholdersEquityAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:label="us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Product Warranty Liability [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:to="us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherNonoperatingIncomeExpense" xlink:label="us-gaap_OtherNonoperatingIncomeExpense" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OtherNonoperatingIncomeExpense-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other, net</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherNonoperatingIncomeExpense" xlink:to="us-gaap_OtherNonoperatingIncomeExpense-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="us-gaap_NonoperatingIncomeExpense" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NonoperatingIncomeExpense-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_NonoperatingIncomeExpense</link:label>
    <link:label xlink:label="us-gaap_NonoperatingIncomeExpense-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Other expense, net</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NonoperatingIncomeExpense" xlink:to="us-gaap_NonoperatingIncomeExpense-label" xlink:type="arc"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_AccountsPayableAndAccruedLiabilitiesCurrentMember" xlink:label="occ_AccountsPayableAndAccruedLiabilitiesCurrentMember" xlink:type="locator"/>
    <link:label xlink:label="occ_AccountsPayableAndAccruedLiabilitiesCurrentMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounts Payable and Accrued Liabilities, Current [Member]</link:label>
    <link:label xlink:label="occ_AccountsPayableAndAccruedLiabilitiesCurrentMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Information on operating lease liabilities included in accounts payable and accrued expenses.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="occ_AccountsPayableAndAccruedLiabilitiesCurrentMember" xlink:to="occ_AccountsPayableAndAccruedLiabilitiesCurrentMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyDisclosureTextBlock" xlink:label="us-gaap_ProductWarrantyDisclosureTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ProductWarrantyDisclosureTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Product Warranty Disclosure [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProductWarrantyDisclosureTextBlock" xlink:to="us-gaap_ProductWarrantyDisclosureTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Award Type [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="us-gaap_AssetsCurrentAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AssetsCurrentAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Current assets:</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_AssetsCurrentAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueDisclosuresTextBlock" xlink:label="us-gaap_FairValueDisclosuresTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FairValueDisclosuresTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Fair Value Disclosures [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FairValueDisclosuresTextBlock" xlink:to="us-gaap_FairValueDisclosuresTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NetIncomeLoss-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net income (loss)</link:label>
    <link:label xlink:label="us-gaap_NetIncomeLoss-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net income (loss)</link:label>
    <link:label xlink:label="us-gaap_NetIncomeLoss-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Net income</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetIncomeLoss" xlink:to="us-gaap_NetIncomeLoss-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AwardTypeAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Award Type [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_AwardTypeAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Intangible assets, net</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:to="us-gaap_IntangibleAssetsNetExcludingGoodwill-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations</link:label>
    <link:label xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations-label" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Cash at beginning of period</link:label>
    <link:label xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations-label" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Cash at end of period</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect</link:label>
    <link:label xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net increase (decrease) in cash</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Liabilities" xlink:label="us-gaap_Liabilities" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_Liabilities-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_Liabilities</link:label>
    <link:label xlink:label="us-gaap_Liabilities-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total liabilities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_Liabilities" xlink:to="us-gaap_Liabilities-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_NetCashProvidedByUsedInFinancingActivities</link:label>
    <link:label xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net cash provided by financing activities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockMember" xlink:label="us-gaap_RestrictedStockMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RestrictedStockMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Restricted Stock [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RestrictedStockMember" xlink:to="us-gaap_RestrictedStockMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingencies" xlink:label="us-gaap_CommitmentsAndContingencies" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CommitmentsAndContingencies-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Commitments and Contingencies</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommitmentsAndContingencies" xlink:to="us-gaap_CommitmentsAndContingencies-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingIncomeLoss" xlink:label="us-gaap_OperatingIncomeLoss" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OperatingIncomeLoss-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_OperatingIncomeLoss</link:label>
    <link:label xlink:label="us-gaap_OperatingIncomeLoss-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Income (loss) from operations</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingIncomeLoss" xlink:to="us-gaap_OperatingIncomeLoss-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_NetCashProvidedByUsedInOperatingActivities</link:label>
    <link:label xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net cash used in operating activities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Prepaid expenses and other assets</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:to="us-gaap_PrepaidExpenseAndOtherAssetsCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_NetCashProvidedByUsedInInvestingActivities</link:label>
    <link:label xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Net cash used in investing activities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GrossProfit" xlink:label="us-gaap_GrossProfit" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_GrossProfit-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_GrossProfit</link:label>
    <link:label xlink:label="us-gaap_GrossProfit-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Gross profit</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GrossProfit" xlink:to="us-gaap_GrossProfit-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="us-gaap_CostOfGoodsAndServicesSold" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CostOfGoodsAndServicesSold-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cost of goods sold</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CostOfGoodsAndServicesSold" xlink:to="us-gaap_CostOfGoodsAndServicesSold-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Commitments and Contingencies Disclosure [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:to="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerLiability" xlink:label="us-gaap_ContractWithCustomerLiability" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ContractWithCustomerLiability-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ContractWithCustomerLiability</link:label>
    <link:label xlink:label="us-gaap_ContractWithCustomerLiability-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Contract with Customer, Liability, Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerLiability" xlink:to="us-gaap_ContractWithCustomerLiability-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PropertyPlantAndEquipmentNet-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Property and equipment, net</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PropertyPlantAndEquipmentNet" xlink:to="us-gaap_PropertyPlantAndEquipmentNet-label" xlink:type="arc"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_PinnacleFinancialPartnersMember" xlink:label="occ_PinnacleFinancialPartnersMember" xlink:type="locator"/>
    <link:label xlink:label="occ_PinnacleFinancialPartnersMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Pinnacle Financial Partners [Member]</link:label>
    <link:label xlink:label="occ_PinnacleFinancialPartnersMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents Pinnacle financial partners, a lender to the reporting entity..</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="occ_PinnacleFinancialPartnersMember" xlink:to="occ_PinnacleFinancialPartnersMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeAxis" xlink:label="us-gaap_LongtermDebtTypeAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LongtermDebtTypeAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Long-Term Debt, Type [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="us-gaap_LongtermDebtTypeAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeDomain" xlink:label="us-gaap_LongtermDebtTypeDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LongtermDebtTypeDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Long-Term Debt, Type [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongtermDebtTypeDomain" xlink:to="us-gaap_LongtermDebtTypeDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyAccrual" xlink:label="us-gaap_ProductWarrantyAccrual" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ProductWarrantyAccrual-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ProductWarrantyAccrual</link:label>
    <link:label xlink:label="us-gaap_ProductWarrantyAccrual-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Standard and Extended Product Warranty Accrual, Ending Balance</link:label>
    <link:label xlink:label="us-gaap_ProductWarrantyAccrual-label" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Balance at beginning of period</link:label>
    <link:label xlink:label="us-gaap_ProductWarrantyAccrual-label" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Balance at end of period</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProductWarrantyAccrual" xlink:to="us-gaap_ProductWarrantyAccrual-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash flows from investing activities:</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetainedEarningsMember" xlink:label="us-gaap_RetainedEarningsMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RetainedEarningsMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Retained Earnings [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RetainedEarningsMember" xlink:to="us-gaap_RetainedEarningsMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareTextBlock" xlink:label="us-gaap_EarningsPerShareTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_EarningsPerShareTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Earnings Per Share [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareTextBlock" xlink:to="us-gaap_EarningsPerShareTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:type="locator"/>
    <link:label xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Title of Individual [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_TitleOfIndividualAxis" xlink:label="srt_TitleOfIndividualAxis" xlink:type="locator"/>
    <link:label xlink:label="srt_TitleOfIndividualAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Title of Individual [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="srt_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:label="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable</link:label>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Income taxes payable</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:to="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities</link:label>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accounts payable and accrued expenses</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockMember" xlink:label="us-gaap_CommonStockMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CommonStockMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Common Stock [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockMember" xlink:to="us-gaap_CommonStockMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities" xlink:label="us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities</link:label>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Accrued compensation and payroll taxes</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities" xlink:to="us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncomeTaxExpenseBenefit-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_IncomeTaxExpenseBenefit</link:label>
    <link:label xlink:label="us-gaap_IncomeTaxExpenseBenefit-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Income tax expense</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeTaxExpenseBenefit" xlink:to="us-gaap_IncomeTaxExpenseBenefit-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StatementEquityComponentsAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity Components [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_StatementEquityComponentsAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_EquityComponentDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Equity Component [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EquityComponentDomain" xlink:to="us-gaap_EquityComponentDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesMember" xlink:label="us-gaap_AccountsPayableAndAccruedLiabilitiesMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AccountsPayableAndAccruedLiabilitiesMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounts Payable and Accrued Liabilities [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountsPayableAndAccruedLiabilitiesMember" xlink:to="us-gaap_AccountsPayableAndAccruedLiabilitiesMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebt" xlink:label="us-gaap_LongTermDebt" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LongTermDebt-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_LongTermDebt</link:label>
    <link:label xlink:label="us-gaap_LongTermDebt-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Long-term debt</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebt" xlink:to="us-gaap_LongTermDebt-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherNoncurrentLiabilitiesMember" xlink:label="us-gaap_OtherNoncurrentLiabilitiesMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OtherNoncurrentLiabilitiesMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Noncurrent Liabilities [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherNoncurrentLiabilitiesMember" xlink:to="us-gaap_OtherNoncurrentLiabilitiesMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherAssetsMember" xlink:label="us-gaap_OtherAssetsMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OtherAssetsMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other Assets [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherAssetsMember" xlink:to="us-gaap_OtherAssetsMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest</link:label>
    <link:label xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Income (loss) before income taxes</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest-label" xlink:type="arc"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_NorthMillCapitalLlcMember" xlink:label="occ_NorthMillCapitalLlcMember" xlink:type="locator"/>
    <link:label xlink:label="occ_NorthMillCapitalLlcMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">North Mill Capital LLC [Member]</link:label>
    <link:label xlink:label="occ_NorthMillCapitalLlcMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents North Mill Capital LLC.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="occ_NorthMillCapitalLlcMember" xlink:to="occ_NorthMillCapitalLlcMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfFinancingCosts" xlink:label="us-gaap_PaymentsOfFinancingCosts" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PaymentsOfFinancingCosts-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_PaymentsOfFinancingCosts</link:label>
    <link:label xlink:label="us-gaap_PaymentsOfFinancingCosts-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Payments for financing costs</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PaymentsOfFinancingCosts" xlink:to="us-gaap_PaymentsOfFinancingCosts-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCredit" xlink:label="us-gaap_LineOfCredit" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LineOfCredit-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_LineOfCredit</link:label>
    <link:label xlink:label="us-gaap_LineOfCredit-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Long-Term Line of Credit, Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LineOfCredit" xlink:to="us-gaap_LineOfCredit-label" xlink:type="arc"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_LineOfCreditFacilityPercentOfEligibleAccounts" xlink:label="occ_LineOfCreditFacilityPercentOfEligibleAccounts" xlink:type="locator"/>
    <link:label xlink:label="occ_LineOfCreditFacilityPercentOfEligibleAccounts-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">occ_LineOfCreditFacilityPercentOfEligibleAccounts</link:label>
    <link:label xlink:label="occ_LineOfCreditFacilityPercentOfEligibleAccounts-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Line of Credit Facility, Percent of Eligible Accounts</link:label>
    <link:label xlink:label="occ_LineOfCreditFacilityPercentOfEligibleAccounts-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Percent of aggregate outstanding amount of eligible accounts available for advance.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="occ_LineOfCreditFacilityPercentOfEligibleAccounts" xlink:to="occ_LineOfCreditFacilityPercentOfEligibleAccounts-label" xlink:type="arc"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_LineOfCreditFacilityPercentOfEligibleInventory" xlink:label="occ_LineOfCreditFacilityPercentOfEligibleInventory" xlink:type="locator"/>
    <link:label xlink:label="occ_LineOfCreditFacilityPercentOfEligibleInventory-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">occ_LineOfCreditFacilityPercentOfEligibleInventory</link:label>
    <link:label xlink:label="occ_LineOfCreditFacilityPercentOfEligibleInventory-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Line of Credit Facility, Percent of Eligible Inventory</link:label>
    <link:label xlink:label="occ_LineOfCreditFacilityPercentOfEligibleInventory-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Percent of aggregate outstanding amount of eligible inventory available for advance.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="occ_LineOfCreditFacilityPercentOfEligibleInventory" xlink:to="occ_LineOfCreditFacilityPercentOfEligibleInventory-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue-label" xlink:type="arc"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_LineOfCreditFacilityAdditionalCapacityForAdvances" xlink:label="occ_LineOfCreditFacilityAdditionalCapacityForAdvances" xlink:type="locator"/>
    <link:label xlink:label="occ_LineOfCreditFacilityAdditionalCapacityForAdvances-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">occ_LineOfCreditFacilityAdditionalCapacityForAdvances</link:label>
    <link:label xlink:label="occ_LineOfCreditFacilityAdditionalCapacityForAdvances-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Line of Credit Facility, Additional Capacity for Advances</link:label>
    <link:label xlink:label="occ_LineOfCreditFacilityAdditionalCapacityForAdvances-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Additional facility for advances.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="occ_LineOfCreditFacilityAdditionalCapacityForAdvances" xlink:to="occ_LineOfCreditFacilityAdditionalCapacityForAdvances-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities" xlink:label="us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities</link:label>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Other noncurrent liabilities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities" xlink:to="us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AllocatedShareBasedCompensationExpense-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_AllocatedShareBasedCompensationExpense</link:label>
    <link:label xlink:label="us-gaap_AllocatedShareBasedCompensationExpense-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share-Based Payment Arrangement, Expense</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AllocatedShareBasedCompensationExpense" xlink:to="us-gaap_AllocatedShareBasedCompensationExpense-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RepaymentsOfLongTermDebt" xlink:label="us-gaap_RepaymentsOfLongTermDebt" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RepaymentsOfLongTermDebt-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_RepaymentsOfLongTermDebt</link:label>
    <link:label xlink:label="us-gaap_RepaymentsOfLongTermDebt-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Principal payments on long-term debt</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RepaymentsOfLongTermDebt" xlink:to="us-gaap_RepaymentsOfLongTermDebt-label" xlink:type="arc"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_LineOfCreditFacilityRestrictedCapacityForAdvances" xlink:label="occ_LineOfCreditFacilityRestrictedCapacityForAdvances" xlink:type="locator"/>
    <link:label xlink:label="occ_LineOfCreditFacilityRestrictedCapacityForAdvances-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">occ_LineOfCreditFacilityRestrictedCapacityForAdvances</link:label>
    <link:label xlink:label="occ_LineOfCreditFacilityRestrictedCapacityForAdvances-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Line of Credit Facility, Restricted Capacity for Advances</link:label>
    <link:label xlink:label="occ_LineOfCreditFacilityRestrictedCapacityForAdvances-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Additional limit to facility for advances.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="occ_LineOfCreditFacilityRestrictedCapacityForAdvances" xlink:to="occ_LineOfCreditFacilityRestrictedCapacityForAdvances-label" xlink:type="arc"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_DebtInstrumentTermExtensions" xlink:label="occ_DebtInstrumentTermExtensions" xlink:type="locator"/>
    <link:label xlink:label="occ_DebtInstrumentTermExtensions-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">occ_DebtInstrumentTermExtensions</link:label>
    <link:label xlink:label="occ_DebtInstrumentTermExtensions-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Debt Instrument, Term Extensions (Year)</link:label>
    <link:label xlink:label="occ_DebtInstrumentTermExtensions-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Potential extension to the 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.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="occ_DebtInstrumentTermExtensions" xlink:to="occ_DebtInstrumentTermExtensions-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:label="us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RevenueFromContractWithCustomerTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue from Contract with Customer [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:to="us-gaap_RevenueFromContractWithCustomerTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="us-gaap_BalanceSheetLocationAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_BalanceSheetLocationAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Balance Sheet Location [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BalanceSheetLocationAxis" xlink:to="us-gaap_BalanceSheetLocationAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="us-gaap_BalanceSheetLocationDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_BalanceSheetLocationDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Balance Sheet Location [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_BalanceSheetLocationDomain" xlink:to="us-gaap_BalanceSheetLocationDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentQuarterlyReport" xlink:label="dei_DocumentQuarterlyReport" xlink:type="locator"/>
    <link:label xlink:label="dei_DocumentQuarterlyReport-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">dei_DocumentQuarterlyReport</link:label>
    <link:label xlink:label="dei_DocumentQuarterlyReport-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Document Quarterly Report</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentQuarterlyReport" xlink:to="dei_DocumentQuarterlyReport-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="dei_EntityIncorporationStateCountryCode" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityIncorporationStateCountryCode-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Incorporation, State or Country Code</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityIncorporationStateCountryCode" xlink:to="dei_EntityIncorporationStateCountryCode-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AmendmentFlag" xlink:label="dei_AmendmentFlag" xlink:type="locator"/>
    <link:label xlink:label="dei_AmendmentFlag-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Amendment Flag</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_AmendmentFlag" xlink:to="dei_AmendmentFlag-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountingPoliciesAbstract" xlink:label="us-gaap_AccountingPoliciesAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AccountingPoliciesAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounting Policies [Abstract]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AccountingPoliciesAbstract" xlink:to="us-gaap_AccountingPoliciesAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentTransitionReport" xlink:label="dei_DocumentTransitionReport" xlink:type="locator"/>
    <link:label xlink:label="dei_DocumentTransitionReport-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">dei_DocumentTransitionReport</link:label>
    <link:label xlink:label="dei_DocumentTransitionReport-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Document Transition Report</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentTransitionReport" xlink:to="dei_DocumentTransitionReport-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_CityAreaCode" xlink:label="dei_CityAreaCode" xlink:type="locator"/>
    <link:label xlink:label="dei_CityAreaCode-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">dei_CityAreaCode</link:label>
    <link:label xlink:label="dei_CityAreaCode-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">City Area Code</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CityAreaCode" xlink:to="dei_CityAreaCode-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentMaturityDate" xlink:label="us-gaap_DebtInstrumentMaturityDate" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DebtInstrumentMaturityDate-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DebtInstrumentMaturityDate</link:label>
    <link:label xlink:label="us-gaap_DebtInstrumentMaturityDate-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Debt Instrument, Maturity Date</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentMaturityDate" xlink:to="us-gaap_DebtInstrumentMaturityDate-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentPeriodicPayment" xlink:label="us-gaap_DebtInstrumentPeriodicPayment" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DebtInstrumentPeriodicPayment-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DebtInstrumentPeriodicPayment</link:label>
    <link:label xlink:label="us-gaap_DebtInstrumentPeriodicPayment-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Debt Instrument, Periodic Payment, Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentPeriodicPayment" xlink:to="us-gaap_DebtInstrumentPeriodicPayment-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskDisclosureTextBlock" xlink:label="us-gaap_ConcentrationRiskDisclosureTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ConcentrationRiskDisclosureTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Concentration Risk Disclosure [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskDisclosureTextBlock" xlink:to="us-gaap_ConcentrationRiskDisclosureTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityInteractiveDataCurrent" xlink:label="dei_EntityInteractiveDataCurrent" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityInteractiveDataCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">dei_EntityInteractiveDataCurrent</link:label>
    <link:label xlink:label="dei_EntityInteractiveDataCurrent-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Interactive Data Current</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityInteractiveDataCurrent" xlink:to="dei_EntityInteractiveDataCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid" xlink:label="us-gaap_DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid</link:label>
    <link:label xlink:label="us-gaap_DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Debt Instrument, Periodic Payment Terms, Balloon Payment to be Paid</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid" xlink:to="us-gaap_DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:label="us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_GainLossOnSaleOfPropertyPlantEquipment-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_GainLossOnSaleOfPropertyPlantEquipment</link:label>
    <link:label xlink:label="us-gaap_GainLossOnSaleOfPropertyPlantEquipment-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Loss on sale of property and equipment</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:to="us-gaap_GainLossOnSaleOfPropertyPlantEquipment-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharesOutstanding" xlink:label="us-gaap_SharesOutstanding" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_SharesOutstanding-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_SharesOutstanding</link:label>
    <link:label xlink:label="us-gaap_SharesOutstanding-label" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Balances at October 31, 2022 (in shares)</link:label>
    <link:label xlink:label="us-gaap_SharesOutstanding-label" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Balances at January 31, 2023 (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SharesOutstanding" xlink:to="us-gaap_SharesOutstanding-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_SecurityExchangeName" xlink:label="dei_SecurityExchangeName" xlink:type="locator"/>
    <link:label xlink:label="dei_SecurityExchangeName-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Security Exchange Name</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_SecurityExchangeName" xlink:to="dei_SecurityExchangeName-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="us-gaap_CommonStockSharesOutstanding" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CommonStockSharesOutstanding-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_CommonStockSharesOutstanding</link:label>
    <link:label xlink:label="us-gaap_CommonStockSharesOutstanding-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Common Stock, Shares, Outstanding, Ending Balance (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CommonStockSharesOutstanding" xlink:to="us-gaap_CommonStockSharesOutstanding-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockSharesOutstanding" xlink:label="us-gaap_PreferredStockSharesOutstanding" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PreferredStockSharesOutstanding-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_PreferredStockSharesOutstanding</link:label>
    <link:label xlink:label="us-gaap_PreferredStockSharesOutstanding-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Preferred Stock, Shares Outstanding, Ending Balance (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PreferredStockSharesOutstanding" xlink:to="us-gaap_PreferredStockSharesOutstanding-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_Security12bTitle" xlink:label="dei_Security12bTitle" xlink:type="locator"/>
    <link:label xlink:label="dei_Security12bTitle-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Title of 12(b) Security</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_Security12bTitle" xlink:to="dei_Security12bTitle-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:label="us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInOtherOperatingAssets-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_IncreaseDecreaseInOtherOperatingAssets</link:label>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInOtherOperatingAssets-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Other assets</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:to="us-gaap_IncreaseDecreaseInOtherOperatingAssets-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_CurrentFiscalYearEndDate" xlink:label="dei_CurrentFiscalYearEndDate" xlink:type="locator"/>
    <link:label xlink:label="dei_CurrentFiscalYearEndDate-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Current Fiscal Year End Date</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_CurrentFiscalYearEndDate" xlink:to="dei_CurrentFiscalYearEndDate-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOperatingLiabilitiesAbstract" xlink:label="us-gaap_IncreaseDecreaseInOperatingLiabilitiesAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInOperatingLiabilitiesAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Increase (decrease) in:</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInOperatingLiabilitiesAbstract" xlink:to="us-gaap_IncreaseDecreaseInOperatingLiabilitiesAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:label="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DebtInstrumentBasisSpreadOnVariableRate1</link:label>
    <link:label xlink:label="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Debt Instrument, Basis Spread on Variable Rate</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:to="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:label="us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DebtInstrumentInterestRateStatedPercentage-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DebtInstrumentInterestRateStatedPercentage</link:label>
    <link:label xlink:label="us-gaap_DebtInstrumentInterestRateStatedPercentage-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Debt Instrument, Interest Rate, Stated Percentage</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:to="us-gaap_DebtInstrumentInterestRateStatedPercentage-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:label="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets</link:label>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Prepaid expenses and other assets</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:to="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets-label" xlink:type="arc"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_NorthCarolinaRealEstateLoanMember" xlink:label="occ_NorthCarolinaRealEstateLoanMember" xlink:type="locator"/>
    <link:label xlink:label="occ_NorthCarolinaRealEstateLoanMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">North Carolina Real Estate Loan [Member]</link:label>
    <link:label xlink:label="occ_NorthCarolinaRealEstateLoanMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">North carolina real estate loan [member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="occ_NorthCarolinaRealEstateLoanMember" xlink:to="occ_NorthCarolinaRealEstateLoanMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentInterestRateEffectivePercentage" xlink:label="us-gaap_DebtInstrumentInterestRateEffectivePercentage" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DebtInstrumentInterestRateEffectivePercentage-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DebtInstrumentInterestRateEffectivePercentage</link:label>
    <link:label xlink:label="us-gaap_DebtInstrumentInterestRateEffectivePercentage-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Debt Instrument, Interest Rate, Effective Percentage</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentInterestRateEffectivePercentage" xlink:to="us-gaap_DebtInstrumentInterestRateEffectivePercentage-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:label="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent</link:label>
    <link:label xlink:label="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating Lease, Weighted Average Discount Rate, Percent</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:to="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="dei_DocumentFiscalPeriodFocus" xlink:type="locator"/>
    <link:label xlink:label="dei_DocumentFiscalPeriodFocus-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Fiscal Period Focus</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentFiscalPeriodFocus" xlink:to="dei_DocumentFiscalPeriodFocus-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentFiscalYearFocus" xlink:label="dei_DocumentFiscalYearFocus" xlink:type="locator"/>
    <link:label xlink:label="dei_DocumentFiscalYearFocus-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Fiscal Year Focus</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentFiscalYearFocus" xlink:to="dei_DocumentFiscalYearFocus-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentPeriodEndDate" xlink:label="dei_DocumentPeriodEndDate" xlink:type="locator"/>
    <link:label xlink:label="dei_DocumentPeriodEndDate-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">dei_DocumentPeriodEndDate</link:label>
    <link:label xlink:label="dei_DocumentPeriodEndDate-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Document Period End Date</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentPeriodEndDate" xlink:to="dei_DocumentPeriodEndDate-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:label="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability</link:label>
    <link:label xlink:label="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Right-of-Use Asset Obtained in Exchange for Operating Lease Liability</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:to="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:label="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1</link:label>
    <link:label xlink:label="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating Lease, Weighted Average Remaining Lease Term (Month)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:to="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityFileNumber" xlink:label="dei_EntityFileNumber" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityFileNumber-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">dei_EntityFileNumber</link:label>
    <link:label xlink:label="dei_EntityFileNumber-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity File Number</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityFileNumber" xlink:to="dei_EntityFileNumber-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityEmergingGrowthCompany" xlink:label="dei_EntityEmergingGrowthCompany" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityEmergingGrowthCompany-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Emerging Growth Company</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityEmergingGrowthCompany" xlink:to="dei_EntityEmergingGrowthCompany-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentFaceAmount" xlink:label="us-gaap_DebtInstrumentFaceAmount" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DebtInstrumentFaceAmount-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DebtInstrumentFaceAmount</link:label>
    <link:label xlink:label="us-gaap_DebtInstrumentFaceAmount-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Debt Instrument, Face Amount</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DebtInstrumentFaceAmount" xlink:to="us-gaap_DebtInstrumentFaceAmount-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentType" xlink:label="dei_DocumentType" xlink:type="locator"/>
    <link:label xlink:label="dei_DocumentType-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">dei_DocumentType</link:label>
    <link:label xlink:label="dei_DocumentType-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Document Type</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentType" xlink:to="dei_DocumentType-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntitySmallBusiness" xlink:label="dei_EntitySmallBusiness" xlink:type="locator"/>
    <link:label xlink:label="dei_EntitySmallBusiness-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Small Business</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntitySmallBusiness" xlink:to="dei_EntitySmallBusiness-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityShellCompany" xlink:label="dei_EntityShellCompany" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityShellCompany-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">dei_EntityShellCompany</link:label>
    <link:label xlink:label="dei_EntityShellCompany-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Shell Company</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityShellCompany" xlink:to="dei_EntityShellCompany-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentInformationLineItems" xlink:label="dei_DocumentInformationLineItems" xlink:type="locator"/>
    <link:label xlink:label="dei_DocumentInformationLineItems-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Information [Line Items]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentInformationLineItems-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentInformationTable" xlink:label="dei_DocumentInformationTable" xlink:type="locator"/>
    <link:label xlink:label="dei_DocumentInformationTable-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Document Information [Table]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_DocumentInformationTable" xlink:to="dei_DocumentInformationTable-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AreaOfRealEstateProperty" xlink:label="us-gaap_AreaOfRealEstateProperty" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AreaOfRealEstateProperty-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_AreaOfRealEstateProperty</link:label>
    <link:label xlink:label="us-gaap_AreaOfRealEstateProperty-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Area of Real Estate Property (Square Foot)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AreaOfRealEstateProperty" xlink:to="us-gaap_AreaOfRealEstateProperty-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityFilerCategory" xlink:label="dei_EntityFilerCategory" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityFilerCategory-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Filer Category</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityFilerCategory" xlink:to="dei_EntityFilerCategory-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityCurrentReportingStatus" xlink:label="dei_EntityCurrentReportingStatus" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityCurrentReportingStatus-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">dei_EntityCurrentReportingStatus</link:label>
    <link:label xlink:label="dei_EntityCurrentReportingStatus-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Current Reporting Status</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCurrentReportingStatus" xlink:to="dei_EntityCurrentReportingStatus-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VariableRateDomain" xlink:label="us-gaap_VariableRateDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_VariableRateDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Variable Rate [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_VariableRateDomain" xlink:to="us-gaap_VariableRateDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOtherReceivables" xlink:label="us-gaap_IncreaseDecreaseInOtherReceivables" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInOtherReceivables-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_IncreaseDecreaseInOtherReceivables</link:label>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInOtherReceivables-label" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Other receivables</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInOtherReceivables" xlink:to="us-gaap_IncreaseDecreaseInOtherReceivables-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RepaymentsOfNotesPayable" xlink:label="us-gaap_RepaymentsOfNotesPayable" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RepaymentsOfNotesPayable-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_RepaymentsOfNotesPayable</link:label>
    <link:label xlink:label="us-gaap_RepaymentsOfNotesPayable-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Payments on note payable, revolver</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RepaymentsOfNotesPayable" xlink:to="us-gaap_RepaymentsOfNotesPayable-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PrimeRateMember" xlink:label="us-gaap_PrimeRateMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_PrimeRateMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Prime Rate [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_PrimeRateMember" xlink:to="us-gaap_PrimeRateMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount</link:label>
    <link:label xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VariableRateAxis" xlink:label="us-gaap_VariableRateAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_VariableRateAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Variable Rate [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_VariableRateAxis" xlink:to="us-gaap_VariableRateAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromNotesPayable" xlink:label="us-gaap_ProceedsFromNotesPayable" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ProceedsFromNotesPayable-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Proceeds from note payable, revolver</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProceedsFromNotesPayable" xlink:to="us-gaap_ProceedsFromNotesPayable-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_IncreaseDecreaseInAccountsReceivable</link:label>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable-label" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Trade accounts receivable</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:to="us-gaap_IncreaseDecreaseInAccountsReceivable-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="us-gaap_ConcentrationRiskPercentage1" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ConcentrationRiskPercentage1-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ConcentrationRiskPercentage1</link:label>
    <link:label xlink:label="us-gaap_ConcentrationRiskPercentage1-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Concentration Risk, Percentage</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskPercentage1" xlink:to="us-gaap_ConcentrationRiskPercentage1-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityTaxIdentificationNumber" xlink:label="dei_EntityTaxIdentificationNumber" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityTaxIdentificationNumber-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Tax Identification Number</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityTaxIdentificationNumber" xlink:to="dei_EntityTaxIdentificationNumber-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NonUsMember" xlink:label="us-gaap_NonUsMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NonUsMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Non-US [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NonUsMember" xlink:to="us-gaap_NonUsMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityCentralIndexKey" xlink:label="dei_EntityCentralIndexKey" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityCentralIndexKey-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity Central Index Key</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCentralIndexKey" xlink:to="dei_EntityCentralIndexKey-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityRegistrantName" xlink:label="dei_EntityRegistrantName" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityRegistrantName-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">dei_EntityRegistrantName</link:label>
    <link:label xlink:label="dei_EntityRegistrantName-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Registrant Name</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityRegistrantName" xlink:to="dei_EntityRegistrantName-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Entity [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityDomain" xlink:to="dei_EntityDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="us-gaap_CustomerConcentrationRiskMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_CustomerConcentrationRiskMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Customer Concentration Risk [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_CustomerConcentrationRiskMember" xlink:to="us-gaap_CustomerConcentrationRiskMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:label xlink:label="dei_LegalEntityAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Legal Entity [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_LegalEntityAxis" xlink:to="dei_LegalEntityAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StatementTable-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statement [Table]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementTable-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressAddressLine1" xlink:label="dei_EntityAddressAddressLine1" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityAddressAddressLine1-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">dei_EntityAddressAddressLine1</link:label>
    <link:label xlink:label="dei_EntityAddressAddressLine1-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Address, Address Line One</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressAddressLine1" xlink:to="dei_EntityAddressAddressLine1-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="us-gaap_StatementOfFinancialPositionAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StatementOfFinancialPositionAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statement of Financial Position [Abstract]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_StatementOfFinancialPositionAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic-label" xlink:role="http://www.xbrl.org/2003/role/verboseLabel" xlink:type="resource" xml:lang="en-US">Shares (denominator) (in shares)</link:label>
    <link:label xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_WeightedAverageNumberOfSharesOutstandingBasic</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="us-gaap_AmortizationOfIntangibleAssets" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_AmortizationOfIntangibleAssets-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Amortization of intangible assets</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_AmortizationOfIntangibleAssets" xlink:to="us-gaap_AmortizationOfIntangibleAssets-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressCityOrTown" xlink:label="dei_EntityAddressCityOrTown" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityAddressCityOrTown-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">dei_EntityAddressCityOrTown</link:label>
    <link:label xlink:label="dei_EntityAddressCityOrTown-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Address, City or Town</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressCityOrTown" xlink:to="dei_EntityAddressCityOrTown-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressPostalZipCode" xlink:label="dei_EntityAddressPostalZipCode" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityAddressPostalZipCode-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">dei_EntityAddressPostalZipCode</link:label>
    <link:label xlink:label="dei_EntityAddressPostalZipCode-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Address, Postal Zip Code</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressPostalZipCode" xlink:to="dei_EntityAddressPostalZipCode-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareBasic" xlink:label="us-gaap_EarningsPerShareBasic" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_EarningsPerShareBasic-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Net income (loss) per share: Basic and diluted (in dollars per share)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_EarningsPerShareBasic" xlink:to="us-gaap_EarningsPerShareBasic-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressStateOrProvince" xlink:label="dei_EntityAddressStateOrProvince" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityAddressStateOrProvince-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">dei_EntityAddressStateOrProvince</link:label>
    <link:label xlink:label="dei_EntityAddressStateOrProvince-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Address, State or Province</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityAddressStateOrProvince" xlink:to="dei_EntityAddressStateOrProvince-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="us-gaap_ConcentrationRiskByTypeAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ConcentrationRiskByTypeAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Concentration Risk Type [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskByTypeAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ConcentrationRiskTypeDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Concentration Risk Type [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskTypeDomain" xlink:to="us-gaap_ConcentrationRiskTypeDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfCashFlowsAbstract" xlink:label="us-gaap_StatementOfCashFlowsAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StatementOfCashFlowsAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statement of Cash Flows [Abstract]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_StatementOfCashFlowsAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_VirginiaRealEstateLoanMember" xlink:label="occ_VirginiaRealEstateLoanMember" xlink:type="locator"/>
    <link:label xlink:label="occ_VirginiaRealEstateLoanMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Virginia Real Estate Loan [Member]</link:label>
    <link:label xlink:label="occ_VirginiaRealEstateLoanMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">The name of a real estate loan.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="occ_VirginiaRealEstateLoanMember" xlink:to="occ_VirginiaRealEstateLoanMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="dei_EntityCommonStockSharesOutstanding" xlink:type="locator"/>
    <link:label xlink:label="dei_EntityCommonStockSharesOutstanding-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">dei_EntityCommonStockSharesOutstanding</link:label>
    <link:label xlink:label="dei_EntityCommonStockSharesOutstanding-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Entity Common Stock, Shares Outstanding (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_EntityCommonStockSharesOutstanding" xlink:to="dei_EntityCommonStockSharesOutstanding-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeFinanceLeaseRemainingLeaseTerm" xlink:label="us-gaap_LesseeFinanceLeaseRemainingLeaseTerm" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LesseeFinanceLeaseRemainingLeaseTerm-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_LesseeFinanceLeaseRemainingLeaseTerm</link:label>
    <link:label xlink:label="us-gaap_LesseeFinanceLeaseRemainingLeaseTerm-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Lessee, Finance Lease, Remaining Lease Term (Month)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeFinanceLeaseRemainingLeaseTerm" xlink:to="us-gaap_LesseeFinanceLeaseRemainingLeaseTerm-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerRefundLiability" xlink:label="us-gaap_ContractWithCustomerRefundLiability" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ContractWithCustomerRefundLiability-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ContractWithCustomerRefundLiability</link:label>
    <link:label xlink:label="us-gaap_ContractWithCustomerRefundLiability-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Contract with Customer, Refund Liability, Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ContractWithCustomerRefundLiability" xlink:to="us-gaap_ContractWithCustomerRefundLiability-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfStockholdersEquityAbstract" xlink:label="us-gaap_StatementOfStockholdersEquityAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StatementOfStockholdersEquityAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Statement of Stockholders' Equity [Abstract]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementOfStockholdersEquityAbstract" xlink:to="us-gaap_StatementOfStockholdersEquityAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseContractualTermDomain" xlink:label="us-gaap_LeaseContractualTermDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LeaseContractualTermDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lease Contractual Term [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LeaseContractualTermDomain" xlink:to="us-gaap_LeaseContractualTermDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseContractualTermAxis" xlink:label="us-gaap_LeaseContractualTermAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LeaseContractualTermAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lease Contractual Term [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LeaseContractualTermAxis" xlink:to="us-gaap_LeaseContractualTermAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementAbstract" xlink:label="us-gaap_IncomeStatementAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncomeStatementAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Income Statement [Abstract]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_IncomeStatementAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SalesRevenueNetMember" xlink:label="us-gaap_SalesRevenueNetMember" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_SalesRevenueNetMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue Benchmark [Member]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SalesRevenueNetMember" xlink:to="us-gaap_SalesRevenueNetMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock" xlink:label="us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Revenue from External Customers by Geographic Areas [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock" xlink:to="us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtTextBlock" xlink:label="us-gaap_LongTermDebtTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LongTermDebtTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Long-Term Debt [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtTextBlock" xlink:to="us-gaap_LongTermDebtTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="us-gaap_IncreaseDecreaseInInventories" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInInventories-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_IncreaseDecreaseInInventories</link:label>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInInventories-label" xlink:role="http://www.xbrl.org/2009/role/negatedTerseLabel" xlink:type="resource" xml:lang="en-US">Inventories</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInInventories" xlink:to="us-gaap_IncreaseDecreaseInInventories-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_TradingSymbol" xlink:label="dei_TradingSymbol" xlink:type="locator"/>
    <link:label xlink:label="dei_TradingSymbol-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Trading Symbol</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_TradingSymbol" xlink:to="dei_TradingSymbol-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseInterestExpense" xlink:label="us-gaap_FinanceLeaseInterestExpense" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FinanceLeaseInterestExpense-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_FinanceLeaseInterestExpense</link:label>
    <link:label xlink:label="us-gaap_FinanceLeaseInterestExpense-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Finance Lease, Interest Expense</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseInterestExpense" xlink:to="us-gaap_FinanceLeaseInterestExpense-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Concentration Risk Benchmark [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskByBenchmarkAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Concentration Risk Benchmark [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock" xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Organization, Consolidation and Presentation of Financial Statements Disclosure [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock" xlink:to="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_AllowanceForDoubtfulAccountsForTradeAccountsReceivableDisclosureTextBlock" xlink:label="occ_AllowanceForDoubtfulAccountsForTradeAccountsReceivableDisclosureTextBlock" xlink:type="locator"/>
    <link:label xlink:label="occ_AllowanceForDoubtfulAccountsForTradeAccountsReceivableDisclosureTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Allowance for Doubtful Accounts for Trade Accounts Receivable Disclosure [Text Block]</link:label>
    <link:label xlink:label="occ_AllowanceForDoubtfulAccountsForTradeAccountsReceivableDisclosureTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Allowance for doubtful accounts for trade accounts receivable</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="occ_AllowanceForDoubtfulAccountsForTradeAccountsReceivableDisclosureTextBlock" xlink:to="occ_AllowanceForDoubtfulAccountsForTradeAccountsReceivableDisclosureTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDue-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_FinanceLeaseLiabilityPaymentsDue</link:label>
    <link:label xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDue-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total undiscounted lease payments, finance lease</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDue-label" xlink:type="arc"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_SummaryOfChangesInAllowanceForDoubtfulAccountsForTradeAccountsReceivableTableTextBlock" xlink:label="occ_SummaryOfChangesInAllowanceForDoubtfulAccountsForTradeAccountsReceivableTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="occ_SummaryOfChangesInAllowanceForDoubtfulAccountsForTradeAccountsReceivableTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Summary of Changes in the Allowance for Doubtful Accounts for Trade Accounts Receivable [Table Text Block]</link:label>
    <link:label xlink:label="occ_SummaryOfChangesInAllowanceForDoubtfulAccountsForTradeAccountsReceivableTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Summary Of Changes In The Allowance For Doubtful Accounts For Trade Accounts Receivable [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="occ_SummaryOfChangesInAllowanceForDoubtfulAccountsForTradeAccountsReceivableTableTextBlock" xlink:to="occ_SummaryOfChangesInAllowanceForDoubtfulAccountsForTradeAccountsReceivableTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseRightOfUseAssetAmortization" xlink:label="us-gaap_FinanceLeaseRightOfUseAssetAmortization" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FinanceLeaseRightOfUseAssetAmortization-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_FinanceLeaseRightOfUseAssetAmortization</link:label>
    <link:label xlink:label="us-gaap_FinanceLeaseRightOfUseAssetAmortization-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Finance Lease, Right-of-Use Asset, Amortization</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseRightOfUseAssetAmortization" xlink:to="us-gaap_FinanceLeaseRightOfUseAssetAmortization-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LocalPhoneNumber" xlink:label="dei_LocalPhoneNumber" xlink:type="locator"/>
    <link:label xlink:label="dei_LocalPhoneNumber-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">dei_LocalPhoneNumber</link:label>
    <link:label xlink:label="dei_LocalPhoneNumber-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Local Phone Number</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="dei_LocalPhoneNumber" xlink:to="dei_LocalPhoneNumber-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount" xlink:label="us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount</link:label>
    <link:label xlink:label="us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Present value discount, finance lease</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount" xlink:to="us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:label="us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity</link:label>
    <link:label xlink:label="us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Line of Credit Facility, Remaining Borrowing Capacity</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:to="us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths</link:label>
    <link:label xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2023, finance lease</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_TableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_TableTextBlock</link:label>
    <link:label xlink:label="us-gaap_TableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Notes Tables</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_TableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo</link:label>
    <link:label xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2024, finance lease</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree</link:label>
    <link:label xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2025, finance lease</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour</link:label>
    <link:label xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2026, finance lease</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity</link:label>
    <link:label xlink:label="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Line of Credit Facility, Maximum Borrowing Capacity</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:to="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity-label" xlink:type="arc"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_OperatingLeaseForOfficeManufacturingAndWarehouseSpaceInPlanoTexasMember" xlink:label="occ_OperatingLeaseForOfficeManufacturingAndWarehouseSpaceInPlanoTexasMember" xlink:type="locator"/>
    <link:label xlink:label="occ_OperatingLeaseForOfficeManufacturingAndWarehouseSpaceInPlanoTexasMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Lease for Office, Manufacturing and Warehouse Space in Plano, Texas [Member]</link:label>
    <link:label xlink:label="occ_OperatingLeaseForOfficeManufacturingAndWarehouseSpaceInPlanoTexasMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents the operating lease arrangement related to the office, manufacturing and warehouse space in Plano, Texas.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="occ_OperatingLeaseForOfficeManufacturingAndWarehouseSpaceInPlanoTexasMember" xlink:to="occ_OperatingLeaseForOfficeManufacturingAndWarehouseSpaceInPlanoTexasMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:label="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Accounting Standards Update and Change in Accounting Principle [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:to="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_Plan2017Member" xlink:label="occ_Plan2017Member" xlink:type="locator"/>
    <link:label xlink:label="occ_Plan2017Member-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Plan 2017 [Member]</link:label>
    <link:label xlink:label="occ_Plan2017Member-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents 2017 stock incentive plan.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="occ_Plan2017Member" xlink:to="occ_Plan2017Member-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:label="us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation</link:label>
    <link:label xlink:label="us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Share-based compensation, net (in shares)</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:to="us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SellingGeneralAndAdministrativeExpense" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpense" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_SellingGeneralAndAdministrativeExpense-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Selling, general and administrative expenses</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_SellingGeneralAndAdministrativeExpense" xlink:to="us-gaap_SellingGeneralAndAdministrativeExpense-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProvisionForDoubtfulAccounts" xlink:label="us-gaap_ProvisionForDoubtfulAccounts" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ProvisionForDoubtfulAccounts-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Bad debt recovery</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProvisionForDoubtfulAccounts" xlink:to="us-gaap_ProvisionForDoubtfulAccounts-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:label="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation</link:label>
    <link:label xlink:label="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Share-based compensation, net</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:to="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Cash flows from financing activities:</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyExpense" xlink:label="us-gaap_ProductWarrantyExpense" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ProductWarrantyExpense-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_ProductWarrantyExpense</link:label>
    <link:label xlink:label="us-gaap_ProductWarrantyExpense-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Product Warranty Expense</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ProductWarrantyExpense" xlink:to="us-gaap_ProductWarrantyExpense-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherLiabilitiesNoncurrent" xlink:label="us-gaap_OtherLiabilitiesNoncurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OtherLiabilitiesNoncurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Other noncurrent liabilities</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OtherLiabilitiesNoncurrent" xlink:to="us-gaap_OtherLiabilitiesNoncurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityLenderDomain" xlink:label="us-gaap_LineOfCreditFacilityLenderDomain" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LineOfCreditFacilityLenderDomain-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Line of Credit Facility, Lender [Domain]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LineOfCreditFacilityLenderDomain" xlink:to="us-gaap_LineOfCreditFacilityLenderDomain-label" xlink:type="arc"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_OperatingLeaseForWarehouseSpaceInRoanokeVirginiaMember" xlink:label="occ_OperatingLeaseForWarehouseSpaceInRoanokeVirginiaMember" xlink:type="locator"/>
    <link:label xlink:label="occ_OperatingLeaseForWarehouseSpaceInRoanokeVirginiaMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Operating Lease for Warehouse Space in Roanoke, Virginia [Member]</link:label>
    <link:label xlink:label="occ_OperatingLeaseForWarehouseSpaceInRoanokeVirginiaMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents the operating lease agreement for warehouse space in Roanoke, Virginia.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="occ_OperatingLeaseForWarehouseSpaceInRoanokeVirginiaMember" xlink:to="occ_OperatingLeaseForWarehouseSpaceInRoanokeVirginiaMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryRawMaterialsNetOfReserves" xlink:label="us-gaap_InventoryRawMaterialsNetOfReserves" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_InventoryRawMaterialsNetOfReserves-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Raw materials</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryRawMaterialsNetOfReserves" xlink:to="us-gaap_InventoryRawMaterialsNetOfReserves-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventorySuppliesNetOfReserves" xlink:label="us-gaap_InventorySuppliesNetOfReserves" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_InventorySuppliesNetOfReserves-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Production supplies</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventorySuppliesNetOfReserves" xlink:to="us-gaap_InventorySuppliesNetOfReserves-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityAxis" xlink:label="us-gaap_LineOfCreditFacilityAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LineOfCreditFacilityAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lender Name [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LineOfCreditFacilityAxis" xlink:to="us-gaap_LineOfCreditFacilityAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LiabilitiesAndStockholdersEquity-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_LiabilitiesAndStockholdersEquity</link:label>
    <link:label xlink:label="us-gaap_LiabilitiesAndStockholdersEquity-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total liabilities and shareholders&#8217; equity</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LiabilitiesAndStockholdersEquity" xlink:to="us-gaap_LiabilitiesAndStockholdersEquity-label" xlink:type="arc"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember" xlink:label="occ_VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember" xlink:type="locator"/>
    <link:label xlink:label="occ_VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Virginia Real Estate Loan and North Carolina Real Estate Loan [Member]</link:label>
    <link:label xlink:label="occ_VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Related to the Virginia real estate loan and the North Carolina real estate loan.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="occ_VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember" xlink:to="occ_VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:label="us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_InventoryFinishedGoodsNetOfReserves-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Finished goods</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:to="us-gaap_InventoryFinishedGoodsNetOfReserves-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryWorkInProcessNetOfReserves" xlink:label="us-gaap_InventoryWorkInProcessNetOfReserves" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_InventoryWorkInProcessNetOfReserves-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Work in process</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryWorkInProcessNetOfReserves" xlink:to="us-gaap_InventoryWorkInProcessNetOfReserves-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_US" xlink:label="country_US" xlink:type="locator"/>
    <link:label xlink:label="country_US-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">UNITED STATES</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="country_US" xlink:to="country_US-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOperatingAssetsAbstract" xlink:label="us-gaap_IncreaseDecreaseInOperatingAssetsAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_IncreaseDecreaseInOperatingAssetsAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">(Increase) decrease in:</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_IncreaseDecreaseInOperatingAssetsAbstract" xlink:to="us-gaap_IncreaseDecreaseInOperatingAssetsAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Retained earnings</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit-label" xlink:type="arc"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_EmployeesConsultantAndNonemployeeDirectorsMember" xlink:label="occ_EmployeesConsultantAndNonemployeeDirectorsMember" xlink:type="locator"/>
    <link:label xlink:label="occ_EmployeesConsultantAndNonemployeeDirectorsMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Employees, Consultant and Non-employee Directors [Member]</link:label>
    <link:label xlink:label="occ_EmployeesConsultantAndNonemployeeDirectorsMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents information related to employees, consultant and non-employee directors.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="occ_EmployeesConsultantAndNonemployeeDirectorsMember" xlink:to="occ_EmployeesConsultantAndNonemployeeDirectorsMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestExpense" xlink:label="us-gaap_InterestExpense" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_InterestExpense-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_InterestExpense</link:label>
    <link:label xlink:label="us-gaap_InterestExpense-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Interest expense, net</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InterestExpense" xlink:to="us-gaap_InterestExpense-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StockholdersEquity-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_StockholdersEquity</link:label>
    <link:label xlink:label="us-gaap_StockholdersEquity-label" xlink:role="http://www.xbrl.org/2003/role/periodStartLabel" xlink:type="resource" xml:lang="en-US">Balances at October 31, 2022</link:label>
    <link:label xlink:label="us-gaap_StockholdersEquity-label" xlink:role="http://www.xbrl.org/2003/role/periodEndLabel" xlink:type="resource" xml:lang="en-US">Balances at January 31, 2023</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StockholdersEquity" xlink:to="us-gaap_StockholdersEquity-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_DisclosureTextBlockAbstract-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_DisclosureTextBlockAbstract</link:label>
    <link:label xlink:label="us-gaap_DisclosureTextBlockAbstract-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Notes to Financial Statements</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_DisclosureTextBlockAbstract-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryDisclosureTextBlock" xlink:label="us-gaap_InventoryDisclosureTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_InventoryDisclosureTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Inventory Disclosure [Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_InventoryDisclosureTextBlock" xlink:to="us-gaap_InventoryDisclosureTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_OperatingLeaseLiabilityNoncurrent</link:label>
    <link:label xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating Lease, Liability, Noncurrent</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:label="us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfInventoryCurrentTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Inventory, Current [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:to="us-gaap_ScheduleOfInventoryCurrentTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementClassOfStockAxis" xlink:label="us-gaap_StatementClassOfStockAxis" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_StatementClassOfStockAxis-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Class of Stock [Axis]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_StatementClassOfStockAxis" xlink:to="us-gaap_StatementClassOfStockAxis-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtNoncurrent" xlink:label="us-gaap_LongTermDebtNoncurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LongTermDebtNoncurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_LongTermDebtNoncurrent</link:label>
    <link:label xlink:label="us-gaap_LongTermDebtNoncurrent-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Long-term debt, excluding current installments</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermDebtNoncurrent" xlink:to="us-gaap_LongTermDebtNoncurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiability" xlink:label="us-gaap_OperatingLeaseLiability" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OperatingLeaseLiability-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Total lease liability, operating lease</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseLiability" xlink:to="us-gaap_OperatingLeaseLiability-label" xlink:type="arc"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_LesseeLeaseLiabilityMaturityTableTextBlock" xlink:label="occ_LesseeLeaseLiabilityMaturityTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="occ_LesseeLeaseLiabilityMaturityTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Lessee, Lease Liability, Maturity [Table Text Block]</link:label>
    <link:label xlink:label="occ_LesseeLeaseLiabilityMaturityTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Tabular disclosure of future payments for operating and finance lease obligations.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="occ_LesseeLeaseLiabilityMaturityTableTextBlock" xlink:to="occ_LesseeLeaseLiabilityMaturityTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:to="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermLoansPayable" xlink:label="us-gaap_LongTermLoansPayable" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LongTermLoansPayable-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Long-term debt, excluding current installments</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LongTermLoansPayable" xlink:to="us-gaap_LongTermLoansPayable-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OperatingLeaseLiabilityCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_OperatingLeaseLiabilityCurrent</link:label>
    <link:label xlink:label="us-gaap_OperatingLeaseLiabilityCurrent-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating Lease, Liability, Current</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseLiabilityCurrent" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityCurrent" xlink:label="us-gaap_FinanceLeaseLiabilityCurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FinanceLeaseLiabilityCurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_FinanceLeaseLiabilityCurrent</link:label>
    <link:label xlink:label="us-gaap_FinanceLeaseLiabilityCurrent-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Finance Lease, Liability, Current</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityCurrent" xlink:to="us-gaap_FinanceLeaseLiabilityCurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityNoncurrent" xlink:label="us-gaap_FinanceLeaseLiabilityNoncurrent" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FinanceLeaseLiabilityNoncurrent-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_FinanceLeaseLiabilityNoncurrent</link:label>
    <link:label xlink:label="us-gaap_FinanceLeaseLiabilityNoncurrent-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Finance Lease, Liability, Noncurrent</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiabilityNoncurrent" xlink:to="us-gaap_FinanceLeaseLiabilityNoncurrent-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_OperatingLeaseRightOfUseAsset-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_OperatingLeaseRightOfUseAsset</link:label>
    <link:label xlink:label="us-gaap_OperatingLeaseRightOfUseAsset-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Operating Lease, Right-of-Use Asset</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_OperatingLeaseRightOfUseAsset" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue</link:label>
    <link:label xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue-label" xlink:role="http://www.xbrl.org/2003/role/totalLabel" xlink:type="resource" xml:lang="en-US">Total undiscounted lease payments, operating lease</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue-label" xlink:type="arc"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_CustomerOneMember" xlink:label="occ_CustomerOneMember" xlink:type="locator"/>
    <link:label xlink:label="occ_CustomerOneMember-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Customer One [Member]</link:label>
    <link:label xlink:label="occ_CustomerOneMember-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Represents information pertaining customer number one.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="occ_CustomerOneMember" xlink:to="occ_CustomerOneMember-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeasePrincipalPayments" xlink:label="us-gaap_FinanceLeasePrincipalPayments" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FinanceLeasePrincipalPayments-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_FinanceLeasePrincipalPayments</link:label>
    <link:label xlink:label="us-gaap_FinanceLeasePrincipalPayments-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Principal payments on financing lease</link:label>
    <link:label xlink:label="us-gaap_FinanceLeasePrincipalPayments-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Finance Lease, Principal Payments</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeasePrincipalPayments" xlink:to="us-gaap_FinanceLeasePrincipalPayments-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount</link:label>
    <link:label xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount-label" xlink:role="http://www.xbrl.org/2009/role/negatedLabel" xlink:type="resource" xml:lang="en-US">Present value discount, operating lease</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiability" xlink:label="us-gaap_FinanceLeaseLiability" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FinanceLeaseLiability-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">Total lease liability, finance lease</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseLiability" xlink:to="us-gaap_FinanceLeaseLiability-label" xlink:type="arc"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_ConcentrationRiskNumberOfCustomers" xlink:label="occ_ConcentrationRiskNumberOfCustomers" xlink:type="locator"/>
    <link:label xlink:label="occ_ConcentrationRiskNumberOfCustomers-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">occ_ConcentrationRiskNumberOfCustomers</link:label>
    <link:label xlink:label="occ_ConcentrationRiskNumberOfCustomers-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Concentration Risk, Number of Customers</link:label>
    <link:label xlink:label="occ_ConcentrationRiskNumberOfCustomers-label" xlink:role="http://www.xbrl.org/2003/role/documentation" xlink:type="resource" xml:lang="en-US">Number of customers for a concentration risk benchmark.</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="occ_ConcentrationRiskNumberOfCustomers" xlink:to="occ_ConcentrationRiskNumberOfCustomers-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree</link:label>
    <link:label xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2025, operating lease</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour</link:label>
    <link:label xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">2026, operating lease</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour-label" xlink:type="arc"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseRightOfUseAsset" xlink:label="us-gaap_FinanceLeaseRightOfUseAsset" xlink:type="locator"/>
    <link:label xlink:label="us-gaap_FinanceLeaseRightOfUseAsset-label" xlink:role="http://www.xbrl.org/2003/role/label" xlink:type="resource" xml:lang="en-US">us-gaap_FinanceLeaseRightOfUseAsset</link:label>
    <link:label xlink:label="us-gaap_FinanceLeaseRightOfUseAsset-label" xlink:role="http://www.xbrl.org/2003/role/terseLabel" xlink:type="resource" xml:lang="en-US">Finance Lease, Right-of-Use Asset, after Accumulated Amortization, Total</link:label>
    <link:labelArc xlink:arcrole="http://www.xbrl.org/2003/arcrole/concept-label" xlink:from="us-gaap_FinanceLeaseRightOfUseAsset" xlink:to="us-gaap_FinanceLeaseRightOfUseAsset-label" xlink:type="arc"/>
  </link:labelLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EX-101.PRE
<SEQUENCE>11
<FILENAME>occ-20230131_pre.xml
<DESCRIPTION>XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE
<TEXT>
<XBRL>
<?xml version="1.0" encoding="US-ASCII" standalone="no"?>
<!--Generated by ThunderDome XBRL - 06:09PM UTC 2023-03-10--><link:linkbase xmlns:link="http://www.xbrl.org/2003/linkbase" xmlns:xbrldt="http://xbrl.org/2005/xbrldt" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.xbrl.org/2003/linkbase http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd">
  <link:roleRef roleURI="http://http/20230131/role/statement-note-13-new-accounting-standards-not-yet-adopted" xlink:href="occ-20230131.xsd#statement-note-13-new-accounting-standards-not-yet-adopted" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://http/20230131/role/statement-note-13-new-accounting-standards-not-yet-adopted" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_NotesToFinancialStatementsAbstract" xlink:label="occ_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:label="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="occ_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-12-contingencies" xlink:href="occ-20230131.xsd#statement-note-12-contingencies" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://http/20230131/role/statement-note-12-contingencies" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_NotesToFinancialStatementsAbstract" xlink:label="occ_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:label="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="occ_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_CommitmentsAndContingenciesDisclosureTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-8-fair-value-measurements" xlink:href="occ-20230131.xsd#statement-note-8-fair-value-measurements" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://http/20230131/role/statement-note-8-fair-value-measurements" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_NotesToFinancialStatementsAbstract" xlink:label="occ_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FairValueDisclosuresTextBlock" xlink:label="us-gaap_FairValueDisclosuresTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="occ_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_FairValueDisclosuresTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-1-general" xlink:href="occ-20230131.xsd#statement-note-1-general" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://http/20230131/role/statement-note-1-general" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_NotesToFinancialStatementsAbstract" xlink:label="occ_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock" xlink:label="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="occ_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-document-and-entity-information" xlink:href="occ-20230131.xsd#statement-document-and-entity-information" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://http/20230131/role/statement-document-and-entity-information" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_AmendmentFlag" xlink:label="dei_AmendmentFlag" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_CityAreaCode" xlink:label="dei_CityAreaCode-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_CurrentFiscalYearEndDate" xlink:label="dei_CurrentFiscalYearEndDate" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentFiscalPeriodFocus" xlink:label="dei_DocumentFiscalPeriodFocus" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentFiscalYearFocus" xlink:label="dei_DocumentFiscalYearFocus" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentInformationLineItems" xlink:label="dei_DocumentInformationLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentInformationTable" xlink:label="dei_DocumentInformationTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentPeriodEndDate" xlink:label="dei_DocumentPeriodEndDate-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentQuarterlyReport" xlink:label="dei_DocumentQuarterlyReport-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentTransitionReport" xlink:label="dei_DocumentTransitionReport-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_DocumentType" xlink:label="dei_DocumentType-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressAddressLine1" xlink:label="dei_EntityAddressAddressLine1-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressCityOrTown" xlink:label="dei_EntityAddressCityOrTown-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressPostalZipCode" xlink:label="dei_EntityAddressPostalZipCode-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityAddressStateOrProvince" xlink:label="dei_EntityAddressStateOrProvince-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityCentralIndexKey" xlink:label="dei_EntityCentralIndexKey" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityCommonStockSharesOutstanding" xlink:label="dei_EntityCommonStockSharesOutstanding-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityCurrentReportingStatus" xlink:label="dei_EntityCurrentReportingStatus-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityEmergingGrowthCompany" xlink:label="dei_EntityEmergingGrowthCompany" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityFileNumber" xlink:label="dei_EntityFileNumber-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityFilerCategory" xlink:label="dei_EntityFilerCategory" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityIncorporationStateCountryCode" xlink:label="dei_EntityIncorporationStateCountryCode" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityInteractiveDataCurrent" xlink:label="dei_EntityInteractiveDataCurrent-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityRegistrantName" xlink:label="dei_EntityRegistrantName-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityShellCompany" xlink:label="dei_EntityShellCompany-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntitySmallBusiness" xlink:label="dei_EntitySmallBusiness" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityTaxIdentificationNumber" xlink:label="dei_EntityTaxIdentificationNumber" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LocalPhoneNumber" xlink:label="dei_LocalPhoneNumber-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_Security12bTitle" xlink:label="dei_Security12bTitle" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_SecurityExchangeName" xlink:label="dei_SecurityExchangeName" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_TradingSymbol" xlink:label="dei_TradingSymbol" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationTable" xlink:to="dei_DocumentInformationLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentType-2" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentQuarterlyReport-2" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentPeriodEndDate-2" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentTransitionReport-2" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityFileNumber-2" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityRegistrantName-2" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityIncorporationStateCountryCode" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityTaxIdentificationNumber" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityAddressAddressLine1-2" xlink:type="arc"/>
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityAddressCityOrTown-2" xlink:type="arc"/>
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityAddressStateOrProvince-2" xlink:type="arc"/>
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityAddressPostalZipCode-2" xlink:type="arc"/>
    <link:presentationArc order="12" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_CityAreaCode-2" xlink:type="arc"/>
    <link:presentationArc order="13" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_LocalPhoneNumber-2" xlink:type="arc"/>
    <link:presentationArc order="14" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_Security12bTitle" xlink:type="arc"/>
    <link:presentationArc order="15" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_TradingSymbol" xlink:type="arc"/>
    <link:presentationArc order="16" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_SecurityExchangeName" xlink:type="arc"/>
    <link:presentationArc order="17" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityCurrentReportingStatus-2" xlink:type="arc"/>
    <link:presentationArc order="18" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityInteractiveDataCurrent-2" xlink:type="arc"/>
    <link:presentationArc order="19" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityFilerCategory" xlink:type="arc"/>
    <link:presentationArc order="20" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntitySmallBusiness" xlink:type="arc"/>
    <link:presentationArc order="21" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityEmergingGrowthCompany" xlink:type="arc"/>
    <link:presentationArc order="22" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityShellCompany-2" xlink:type="arc"/>
    <link:presentationArc order="23" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityCommonStockSharesOutstanding-2" xlink:type="arc"/>
    <link:presentationArc order="24" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_EntityCentralIndexKey" xlink:type="arc"/>
    <link:presentationArc order="25" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_CurrentFiscalYearEndDate" xlink:type="arc"/>
    <link:presentationArc order="26" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentFiscalYearFocus" xlink:type="arc"/>
    <link:presentationArc order="27" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_DocumentFiscalPeriodFocus" xlink:type="arc"/>
    <link:presentationArc order="28" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_DocumentInformationLineItems" xlink:to="dei_AmendmentFlag" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited" xlink:href="occ-20230131.xsd#statement-condensed-consolidated-balance-sheets-unaudited" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent" xlink:label="us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsReceivableNetCurrent" xlink:label="us-gaap_AccountsReceivableNetCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Assets" xlink:label="us-gaap_Assets-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsCurrent" xlink:label="us-gaap_AssetsCurrent-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AssetsCurrentAbstract" xlink:label="us-gaap_AssetsCurrentAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:label="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommitmentsAndContingencies" xlink:label="us-gaap_CommitmentsAndContingencies" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockValue" xlink:label="us-gaap_CommonStockValue" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:label="us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:label="us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_Liabilities" xlink:label="us-gaap_Liabilities-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesAndStockholdersEquity" xlink:label="us-gaap_LiabilitiesAndStockholdersEquity-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesCurrent" xlink:label="us-gaap_LiabilitiesCurrent-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LiabilitiesCurrentAbstract" xlink:label="us-gaap_LiabilitiesCurrentAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LoansPayableCurrent" xlink:label="us-gaap_LoansPayableCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermLineOfCredit" xlink:label="us-gaap_LongTermLineOfCredit" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermLoansPayable" xlink:label="us-gaap_LongTermLoansPayable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherAssetsNoncurrent" xlink:label="us-gaap_OtherAssetsNoncurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherLiabilitiesNoncurrent" xlink:label="us-gaap_OtherLiabilitiesNoncurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherReceivables" xlink:label="us-gaap_OtherReceivables" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockValue" xlink:label="us-gaap_PreferredStockValue" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:label="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PropertyPlantAndEquipmentNet" xlink:label="us-gaap_PropertyPlantAndEquipmentNet" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetainedEarningsAccumulatedDeficit" xlink:label="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="us-gaap_StatementOfFinancialPositionAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquityAbstract" xlink:label="us-gaap_StockholdersEquityAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest" xlink:label="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TaxesPayableCurrent" xlink:label="us-gaap_TaxesPayableCurrent" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AssetsCurrentAbstract" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_CashAndCashEquivalentsAtCarryingValue" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_AccountsReceivableNetCurrent" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_OtherReceivables" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_InventoryNet" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_PrepaidExpenseAndOtherAssetsCurrent" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_AssetsCurrent-3" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_PropertyPlantAndEquipmentNet" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_IntangibleAssetsNetExcludingGoodwill" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_OtherAssetsNoncurrent" xlink:type="arc"/>
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AssetsCurrentAbstract" xlink:to="us-gaap_Assets-3" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LiabilitiesCurrentAbstract" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_LoansPayableCurrent" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_EmployeeRelatedLiabilitiesCurrent" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_TaxesPayableCurrent" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_LiabilitiesCurrent-3" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_LongTermLineOfCredit" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_LongTermLoansPayable" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_OtherLiabilitiesNoncurrent" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LiabilitiesCurrentAbstract" xlink:to="us-gaap_Liabilities-3" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockholdersEquityAbstract" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_PreferredStockValue" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_CommonStockValue" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_RetainedEarningsAccumulatedDeficit" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest-3" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_CommitmentsAndContingencies" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StockholdersEquityAbstract" xlink:to="us-gaap_LiabilitiesAndStockholdersEquity-3" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals" xlink:href="occ-20230131.xsd#statement-condensed-consolidated-balance-sheets-unaudited-parentheticals" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockNoParValue" xlink:label="us-gaap_CommonStockNoParValue-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesAuthorized" xlink:label="us-gaap_CommonStockSharesAuthorized-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesIssued" xlink:label="us-gaap_CommonStockSharesIssued-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockSharesOutstanding" xlink:label="us-gaap_CommonStockSharesOutstanding-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockNoParValue" xlink:label="us-gaap_PreferredStockNoParValue-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockSharesAuthorized" xlink:label="us-gaap_PreferredStockSharesAuthorized-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockSharesIssued" xlink:label="us-gaap_PreferredStockSharesIssued-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PreferredStockSharesOutstanding" xlink:label="us-gaap_PreferredStockSharesOutstanding-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfFinancialPositionAbstract" xlink:label="us-gaap_StatementOfFinancialPositionAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfFinancialPositionAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent-2" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PreferredStockNoParValue-2" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PreferredStockSharesAuthorized-2" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PreferredStockSharesIssued-2" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_PreferredStockSharesOutstanding-2" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CommonStockNoParValue-2" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CommonStockSharesAuthorized-2" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CommonStockSharesOutstanding-2" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CommonStockSharesIssued-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-condensed-consolidated-statements-of-operations-unaudited-" xlink:href="occ-20230131.xsd#statement-condensed-consolidated-statements-of-operations-unaudited-" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://http/20230131/role/statement-condensed-consolidated-statements-of-operations-unaudited-" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_RoyaltyRevenueExpense" xlink:label="occ_RoyaltyRevenueExpense-n8" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AmortizationOfIntangibleAssets" xlink:label="us-gaap_AmortizationOfIntangibleAssets" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CostOfGoodsAndServicesSold" xlink:label="us-gaap_CostOfGoodsAndServicesSold" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareBasic" xlink:label="us-gaap_EarningsPerShareBasic" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GrossProfit" xlink:label="us-gaap_GrossProfit-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest" xlink:label="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeStatementAbstract" xlink:label="us-gaap_IncomeStatementAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncomeTaxExpenseBenefit" xlink:label="us-gaap_IncomeTaxExpenseBenefit-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InterestExpense" xlink:label="us-gaap_InterestExpense-n8" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NonoperatingIncomeExpense" xlink:label="us-gaap_NonoperatingIncomeExpense-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingIncomeLoss" xlink:label="us-gaap_OperatingIncomeLoss-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherIncomeAndExpensesAbstract" xlink:label="us-gaap_OtherIncomeAndExpensesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherNonoperatingIncomeExpense" xlink:label="us-gaap_OtherNonoperatingIncomeExpense" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SellingGeneralAndAdministrativeExpense" xlink:label="us-gaap_SellingGeneralAndAdministrativeExpense" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncomeStatementAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_CostOfGoodsAndServicesSold" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_GrossProfit-3" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SellingGeneralAndAdministrativeExpense" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="occ_RoyaltyRevenueExpense-n8" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AmortizationOfIntangibleAssets" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingIncomeLoss-3" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OtherIncomeAndExpensesAbstract" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OtherIncomeAndExpensesAbstract" xlink:to="us-gaap_InterestExpense-n8" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OtherIncomeAndExpensesAbstract" xlink:to="us-gaap_OtherNonoperatingIncomeExpense" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OtherIncomeAndExpensesAbstract" xlink:to="us-gaap_NonoperatingIncomeExpense-3" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OtherIncomeAndExpensesAbstract" xlink:to="us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest-3" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OtherIncomeAndExpensesAbstract" xlink:to="us-gaap_IncomeTaxExpenseBenefit-2" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OtherIncomeAndExpensesAbstract" xlink:to="us-gaap_NetIncomeLoss-3" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_OtherIncomeAndExpensesAbstract" xlink:to="us-gaap_EarningsPerShareBasic" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited" xlink:href="occ-20230131.xsd#statement-condensed-consolidated-statements-of-shareholders-equity-unaudited" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://http/20230131/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CommonStockMember" xlink:label="us-gaap_CommonStockMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EquityComponentDomain" xlink:label="us-gaap_EquityComponentDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RetainedEarningsMember" xlink:label="us-gaap_RetainedEarningsMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharesOutstanding" xlink:label="us-gaap_SharesOutstanding-4" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharesOutstanding" xlink:label="us-gaap_SharesOutstanding-5" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementEquityComponentsAxis" xlink:label="us-gaap_StatementEquityComponentsAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfStockholdersEquityAbstract" xlink:label="us-gaap_StatementOfStockholdersEquityAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation" xlink:label="us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation-n8" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation" xlink:label="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity-4" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StockholdersEquity" xlink:label="us-gaap_StockholdersEquity-5" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfStockholdersEquityAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementEquityComponentsAxis" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_CommonStockMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_RetainedEarningsMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementEquityComponentsAxis" xlink:to="us-gaap_EquityComponentDomain" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SharesOutstanding-4" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockholdersEquity-4" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation-n8" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation-2" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetIncomeLoss-2" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SharesOutstanding-5" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_StockholdersEquity-5" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" xlink:href="occ-20230131.xsd#statement-condensed-consolidated-statements-of-cash-flows-unaudited" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_PinnacleFinancialPartnersMember" xlink:label="occ_PinnacleFinancialPartnersMember" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember" xlink:label="occ_VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations-4" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations-5" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect" xlink:label="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DepreciationDepletionAndAmortization" xlink:label="us-gaap_DepreciationDepletionAndAmortization" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeasePrincipalPayments" xlink:label="us-gaap_FinanceLeasePrincipalPayments-n8" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_GainLossOnSaleOfPropertyPlantEquipment" xlink:label="us-gaap_GainLossOnSaleOfPropertyPlantEquipment-n8" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities" xlink:label="us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccountsReceivable" xlink:label="us-gaap_IncreaseDecreaseInAccountsReceivable-n9" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable" xlink:label="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities" xlink:label="us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInInventories" xlink:label="us-gaap_IncreaseDecreaseInInventories-n9" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOperatingAssetsAbstract" xlink:label="us-gaap_IncreaseDecreaseInOperatingAssetsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOperatingLiabilitiesAbstract" xlink:label="us-gaap_IncreaseDecreaseInOperatingLiabilitiesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities" xlink:label="us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOtherOperatingAssets" xlink:label="us-gaap_IncreaseDecreaseInOtherOperatingAssets-n8" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInOtherReceivables" xlink:label="us-gaap_IncreaseDecreaseInOtherReceivables-n9" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets" xlink:label="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets-n8" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityAxis" xlink:label="us-gaap_LineOfCreditFacilityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityLenderDomain" xlink:label="us-gaap_LineOfCreditFacilityLenderDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeAxis" xlink:label="us-gaap_LongtermDebtTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeDomain" xlink:label="us-gaap_LongtermDebtTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivities-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivities-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivities" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivities-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:label="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsOfFinancingCosts" xlink:label="us-gaap_PaymentsOfFinancingCosts-n8" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquireIntangibleAssets" xlink:label="us-gaap_PaymentsToAcquireIntangibleAssets-n8" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PaymentsToAcquirePropertyPlantAndEquipment" xlink:label="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment-n8" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProceedsFromNotesPayable" xlink:label="us-gaap_ProceedsFromNotesPayable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProvisionForDoubtfulAccounts" xlink:label="us-gaap_ProvisionForDoubtfulAccounts" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RepaymentsOfLongTermDebt" xlink:label="us-gaap_RepaymentsOfLongTermDebt-n8" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RepaymentsOfNotesPayable" xlink:label="us-gaap_RepaymentsOfNotesPayable-n8" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensation" xlink:label="us-gaap_ShareBasedCompensation-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementOfCashFlowsAbstract" xlink:label="us-gaap_StatementOfCashFlowsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementOfCashFlowsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="us-gaap_LongtermDebtTypeDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityAxis" xlink:to="us-gaap_LineOfCreditFacilityLenderDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_LineOfCreditFacilityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityAxis" xlink:to="occ_PinnacleFinancialPartnersMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_LongtermDebtTypeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="occ_VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_NetIncomeLoss" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_DepreciationDepletionAndAmortization" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_ProvisionForDoubtfulAccounts" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_ShareBasedCompensation-2" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract" xlink:to="us-gaap_GainLossOnSaleOfPropertyPlantEquipment-n8" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IncreaseDecreaseInOperatingAssetsAbstract" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingAssetsAbstract" xlink:to="us-gaap_IncreaseDecreaseInAccountsReceivable-n9" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingAssetsAbstract" xlink:to="us-gaap_IncreaseDecreaseInOtherReceivables-n9" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2009/role/negatedTerseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingAssetsAbstract" xlink:to="us-gaap_IncreaseDecreaseInInventories-n9" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingAssetsAbstract" xlink:to="us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets-n8" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingAssetsAbstract" xlink:to="us-gaap_IncreaseDecreaseInOtherOperatingAssets-n8" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_IncreaseDecreaseInOperatingLiabilitiesAbstract" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingLiabilitiesAbstract" xlink:to="us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities-2" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingLiabilitiesAbstract" xlink:to="us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities-2" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingLiabilitiesAbstract" xlink:to="us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable-2" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingLiabilitiesAbstract" xlink:to="us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities-2" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_IncreaseDecreaseInOperatingLiabilitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInOperatingActivities-3" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_PaymentsToAcquirePropertyPlantAndEquipment-n8" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_PaymentsToAcquireIntangibleAssets-n8" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInInvestingActivities-3" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_ProceedsFromNotesPayable" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_RepaymentsOfNotesPayable-n8" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_RepaymentsOfLongTermDebt-n8" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_PaymentsOfFinancingCosts-n8" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_FinanceLeasePrincipalPayments-n8" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_NetCashProvidedByUsedInFinancingActivities-3" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect-3" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations-4" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract" xlink:to="us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations-5" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-2-stock-incentive-plans-and-other-sharebased-compensation" xlink:href="occ-20230131.xsd#statement-note-2-stock-incentive-plans-and-other-sharebased-compensation" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://http/20230131/role/statement-note-2-stock-incentive-plans-and-other-sharebased-compensation" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_EmployeesConsultantAndNonemployeeDirectorsMember" xlink:label="occ_EmployeesConsultantAndNonemployeeDirectorsMember" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_NotesToFinancialStatementsAbstract" xlink:label="occ_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_Plan2017Member" xlink:label="occ_Plan2017Member" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_TitleOfIndividualAxis" xlink:label="srt_TitleOfIndividualAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:label="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameAxis" xlink:label="us-gaap_PlanNameAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockMember" xlink:label="us-gaap_RestrictedStockMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="occ_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PlanNameAxis" xlink:to="us-gaap_PlanNameDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_PlanNameAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PlanNameAxis" xlink:to="occ_Plan2017Member" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_TitleOfIndividualAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_TitleOfIndividualAxis" xlink:to="occ_EmployeesConsultantAndNonemployeeDirectorsMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_AwardTypeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_RestrictedStockMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable" xlink:href="occ-20230131.xsd#statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://http/20230131/role/statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_AllowanceForDoubtfulAccountsForTradeAccountsReceivableDisclosureTextBlock" xlink:label="occ_AllowanceForDoubtfulAccountsForTradeAccountsReceivableDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_NotesToFinancialStatementsAbstract" xlink:label="occ_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="occ_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="occ_AllowanceForDoubtfulAccountsForTradeAccountsReceivableDisclosureTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-4-inventories" xlink:href="occ-20230131.xsd#statement-note-4-inventories" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://http/20230131/role/statement-note-4-inventories" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_NotesToFinancialStatementsAbstract" xlink:label="occ_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryDisclosureTextBlock" xlink:label="us-gaap_InventoryDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="occ_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_InventoryDisclosureTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-5-product-warranties" xlink:href="occ-20230131.xsd#statement-note-5-product-warranties" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://http/20230131/role/statement-note-5-product-warranties" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_NotesToFinancialStatementsAbstract" xlink:label="occ_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesMember" xlink:label="us-gaap_AccountsPayableAndAccruedLiabilitiesMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="us-gaap_BalanceSheetLocationAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="us-gaap_BalanceSheetLocationDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyDisclosureTextBlock" xlink:label="us-gaap_ProductWarrantyDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="occ_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BalanceSheetLocationAxis" xlink:to="us-gaap_BalanceSheetLocationDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_BalanceSheetLocationAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BalanceSheetLocationAxis" xlink:to="us-gaap_AccountsPayableAndAccruedLiabilitiesMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_ProductWarrantyDisclosureTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-" xlink:href="occ-20230131.xsd#statement-note-6-longterm-debt-and-notes-payable-" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_NorthCarolinaRealEstateLoanMember" xlink:label="occ_NorthCarolinaRealEstateLoanMember" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_NorthMillCapitalLlcMember" xlink:label="occ_NorthMillCapitalLlcMember" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_NotesToFinancialStatementsAbstract" xlink:label="occ_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_PinnacleFinancialPartnersMember" xlink:label="occ_PinnacleFinancialPartnersMember" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember" xlink:label="occ_VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_VirginiaRealEstateLoanMember" xlink:label="occ_VirginiaRealEstateLoanMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember" xlink:label="srt_RangeMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityAxis" xlink:label="us-gaap_CreditFacilityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityDomain" xlink:label="us-gaap_CreditFacilityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityAxis" xlink:label="us-gaap_LineOfCreditFacilityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityLenderDomain" xlink:label="us-gaap_LineOfCreditFacilityLenderDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtTextBlock" xlink:label="us-gaap_LongTermDebtTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeAxis" xlink:label="us-gaap_LongtermDebtTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeDomain" xlink:label="us-gaap_LongtermDebtTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PrimeRateMember" xlink:label="us-gaap_PrimeRateMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevolvingCreditFacilityMember" xlink:label="us-gaap_RevolvingCreditFacilityMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VariableRateAxis" xlink:label="us-gaap_VariableRateAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VariableRateDomain" xlink:label="us-gaap_VariableRateDomain" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="occ_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CreditFacilityAxis" xlink:to="us-gaap_CreditFacilityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="us-gaap_LongtermDebtTypeDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_VariableRateAxis" xlink:to="us-gaap_VariableRateDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityAxis" xlink:to="us-gaap_LineOfCreditFacilityLenderDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_LineOfCreditFacilityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityAxis" xlink:to="occ_PinnacleFinancialPartnersMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_LongtermDebtTypeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="occ_VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="occ_VirginiaRealEstateLoanMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="occ_NorthCarolinaRealEstateLoanMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_CreditFacilityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CreditFacilityAxis" xlink:to="us-gaap_RevolvingCreditFacilityMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityAxis" xlink:to="occ_NorthMillCapitalLlcMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_VariableRateAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_VariableRateAxis" xlink:to="us-gaap_PrimeRateMember" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_RangeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_MaximumMember" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_LongTermDebtTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-7-leases" xlink:href="occ-20230131.xsd#statement-note-7-leases" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://http/20230131/role/statement-note-7-leases" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_AccountsPayableAndAccruedLiabilitiesCurrentMember" xlink:label="occ_AccountsPayableAndAccruedLiabilitiesCurrentMember" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_LesseeOperatingAndFinanceLeasesDisclosureTextBlock" xlink:label="occ_LesseeOperatingAndFinanceLeasesDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_NotesToFinancialStatementsAbstract" xlink:label="occ_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_OperatingLeaseForOfficeEquipmentMember" xlink:label="occ_OperatingLeaseForOfficeEquipmentMember" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_OperatingLeaseForOfficeManufacturingAndWarehouseSpaceInPlanoTexasMember" xlink:label="occ_OperatingLeaseForOfficeManufacturingAndWarehouseSpaceInPlanoTexasMember" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_OperatingLeaseForWarehouseSpaceInRoanokeVirginiaMember" xlink:label="occ_OperatingLeaseForWarehouseSpaceInRoanokeVirginiaMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesMember" xlink:label="us-gaap_AccountsPayableAndAccruedLiabilitiesMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="us-gaap_BalanceSheetLocationAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="us-gaap_BalanceSheetLocationDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseContractualTermAxis" xlink:label="us-gaap_LeaseContractualTermAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseContractualTermDomain" xlink:label="us-gaap_LeaseContractualTermDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherAssetsMember" xlink:label="us-gaap_OtherAssetsMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherNoncurrentLiabilitiesMember" xlink:label="us-gaap_OtherNoncurrentLiabilitiesMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="occ_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BalanceSheetLocationAxis" xlink:to="us-gaap_BalanceSheetLocationDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LeaseContractualTermAxis" xlink:to="us-gaap_LeaseContractualTermDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_LeaseContractualTermAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LeaseContractualTermAxis" xlink:to="occ_OperatingLeaseForOfficeManufacturingAndWarehouseSpaceInPlanoTexasMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LeaseContractualTermAxis" xlink:to="occ_OperatingLeaseForWarehouseSpaceInRoanokeVirginiaMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LeaseContractualTermAxis" xlink:to="occ_OperatingLeaseForOfficeEquipmentMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_BalanceSheetLocationAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BalanceSheetLocationAxis" xlink:to="us-gaap_OtherAssetsMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BalanceSheetLocationAxis" xlink:to="us-gaap_AccountsPayableAndAccruedLiabilitiesMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BalanceSheetLocationAxis" xlink:to="us-gaap_OtherNoncurrentLiabilitiesMember" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BalanceSheetLocationAxis" xlink:to="occ_AccountsPayableAndAccruedLiabilitiesCurrentMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="occ_LesseeOperatingAndFinanceLeasesDisclosureTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-9-net-income-loss-per-share" xlink:href="occ-20230131.xsd#statement-note-9-net-income-loss-per-share" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://http/20230131/role/statement-note-9-net-income-loss-per-share" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_NotesToFinancialStatementsAbstract" xlink:label="occ_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareTextBlock" xlink:label="us-gaap_EarningsPerShareTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="occ_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_EarningsPerShareTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-10-segment-information-and-business-and-credit-concentrations" xlink:href="occ-20230131.xsd#statement-note-10-segment-information-and-business-and-credit-concentrations" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://http/20230131/role/statement-note-10-segment-information-and-business-and-credit-concentrations" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_CustomerOneMember" xlink:label="occ_CustomerOneMember" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_NotesToFinancialStatementsAbstract" xlink:label="occ_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MajorCustomersAxis" xlink:label="srt_MajorCustomersAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_NameOfMajorCustomerDomain" xlink:label="srt_NameOfMajorCustomerDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="us-gaap_ConcentrationRiskByTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskDisclosureTextBlock" xlink:label="us-gaap_ConcentrationRiskDisclosureTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="us-gaap_CustomerConcentrationRiskMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SalesRevenueNetMember" xlink:label="us-gaap_SalesRevenueNetMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="occ_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_MajorCustomersAxis" xlink:to="srt_NameOfMajorCustomerDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskTypeDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_SalesRevenueNetMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_ConcentrationRiskByTypeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_CustomerConcentrationRiskMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_MajorCustomersAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_MajorCustomersAxis" xlink:to="occ_CustomerOneMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_ConcentrationRiskDisclosureTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-11-revenue-recognition" xlink:href="occ-20230131.xsd#statement-note-11-revenue-recognition" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://http/20230131/role/statement-note-11-revenue-recognition" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_US" xlink:label="country_US" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_NotesToFinancialStatementsAbstract" xlink:label="occ_NotesToFinancialStatementsAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DisclosureTextBlockAbstract" xlink:label="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NonUsMember" xlink:label="us-gaap_NonUsMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:label="us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="occ_NotesToFinancialStatementsAbstract" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DisclosureTextBlockAbstract-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_StatementGeographicalAxis" xlink:to="srt_SegmentGeographicalDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_StatementGeographicalAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_StatementGeographicalAxis" xlink:to="country_US" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_StatementGeographicalAxis" xlink:to="us-gaap_NonUsMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_DisclosureTextBlockAbstract" xlink:to="us-gaap_RevenueFromContractWithCustomerTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-tables" xlink:href="occ-20230131.xsd#statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://http/20230131/role/statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_SummaryOfChangesInAllowanceForDoubtfulAccountsForTradeAccountsReceivableTableTextBlock" xlink:label="occ_SummaryOfChangesInAllowanceForDoubtfulAccountsForTradeAccountsReceivableTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_statement-statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-tables" xlink:label="occ_statement-statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-tables" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock-2" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="occ_statement-statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-tables" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="occ_SummaryOfChangesInAllowanceForDoubtfulAccountsForTradeAccountsReceivableTableTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-4-inventories-tables" xlink:href="occ-20230131.xsd#statement-note-4-inventories-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://http/20230131/role/statement-note-4-inventories-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_statement-statement-note-4-inventories-tables" xlink:label="occ_statement-statement-note-4-inventories-tables" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:label="us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock-2" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="occ_statement-statement-note-4-inventories-tables" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfInventoryCurrentTableTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-5-product-warranties-tables" xlink:href="occ-20230131.xsd#statement-note-5-product-warranties-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://http/20230131/role/statement-note-5-product-warranties-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_statement-statement-note-5-product-warranties-tables" xlink:label="occ_statement-statement-note-5-product-warranties-tables" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:label="us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock-2" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="occ_statement-statement-note-5-product-warranties-tables" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-tables" xlink:href="occ-20230131.xsd#statement-note-6-longterm-debt-and-notes-payable-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_statement-statement-note-6-longterm-debt-and-notes-payable-tables" xlink:label="occ_statement-statement-note-6-longterm-debt-and-notes-payable-tables" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfDebtTableTextBlock" xlink:label="us-gaap_ScheduleOfDebtTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock-2" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="occ_statement-statement-note-6-longterm-debt-and-notes-payable-tables" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfDebtTableTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-7-leases-tables" xlink:href="occ-20230131.xsd#statement-note-7-leases-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://http/20230131/role/statement-note-7-leases-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_LesseeLeaseLiabilityMaturityTableTextBlock" xlink:label="occ_LesseeLeaseLiabilityMaturityTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_statement-statement-note-7-leases-tables" xlink:label="occ_statement-statement-note-7-leases-tables" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock-2" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="occ_statement-statement-note-7-leases-tables" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="occ_LesseeLeaseLiabilityMaturityTableTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-9-net-income-loss-per-share-tables" xlink:href="occ-20230131.xsd#statement-note-9-net-income-loss-per-share-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://http/20230131/role/statement-note-9-net-income-loss-per-share-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_statement-statement-note-9-net-income-loss-per-share-tables" xlink:label="occ_statement-statement-note-9-net-income-loss-per-share-tables" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:label="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock-2" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="occ_statement-statement-note-9-net-income-loss-per-share-tables" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-11-revenue-recognition-tables" xlink:href="occ-20230131.xsd#statement-note-11-revenue-recognition-tables" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://http/20230131/role/statement-note-11-revenue-recognition-tables" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_statement-statement-note-11-revenue-recognition-tables" xlink:label="occ_statement-statement-note-11-revenue-recognition-tables" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock" xlink:label="us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_TableTextBlock" xlink:label="us-gaap_TableTextBlock-2" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="occ_statement-statement-note-11-revenue-recognition-tables" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_TableTextBlock-2" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_TableTextBlock" xlink:to="us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-2-stock-incentive-plans-and-other-sharebased-compensation-details-textual" xlink:href="occ-20230131.xsd#statement-note-2-stock-incentive-plans-and-other-sharebased-compensation-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://http/20230131/role/statement-note-2-stock-incentive-plans-and-other-sharebased-compensation-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_EmployeesConsultantAndNonemployeeDirectorsMember" xlink:label="occ_EmployeesConsultantAndNonemployeeDirectorsMember" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_NoteToFinancialStatementDetailsTextual" xlink:label="occ_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_Plan2017Member" xlink:label="occ_Plan2017Member" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_TitleOfIndividualAxis" xlink:label="srt_TitleOfIndividualAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:label="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation" xlink:label="us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllocatedShareBasedCompensationExpense" xlink:label="us-gaap_AllocatedShareBasedCompensationExpense-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AwardTypeAxis" xlink:label="us-gaap_AwardTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1" xlink:label="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameAxis" xlink:label="us-gaap_PlanNameAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PlanNameDomain" xlink:label="us-gaap_PlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RestrictedStockMember" xlink:label="us-gaap_RestrictedStockMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant" xlink:label="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:label="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation" xlink:label="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="occ_NoteToFinancialStatementDetailsTextual" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PlanNameAxis" xlink:to="us-gaap_PlanNameDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_TitleOfIndividualAxis" xlink:to="srt_TitleOfIndividualWithRelationshipToEntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_PlanNameAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_PlanNameAxis" xlink:to="occ_Plan2017Member" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_TitleOfIndividualAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_TitleOfIndividualAxis" xlink:to="occ_EmployeesConsultantAndNonemployeeDirectorsMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_AwardTypeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_AwardTypeAxis" xlink:to="us-gaap_RestrictedStockMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant-2" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AllocatedShareBasedCompensationExpense-2" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation-2" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation-2" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1-2" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-summary-of-changes-in-the-allowance-for-doubtful-accounts-for-trade-accounts-receivable-details" xlink:href="occ-20230131.xsd#statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-summary-of-changes-in-the-allowance-for-doubtful-accounts-for-trade-accounts-receivable-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://http/20230131/role/statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-summary-of-changes-in-the-allowance-for-doubtful-accounts-for-trade-accounts-receivable-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_statement-statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-summary-of-changes-in-the-allowance-for-doubtful-accounts-for-trade-accounts-receivable-details" xlink:label="occ_statement-statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-summary-of-changes-in-the-allowance-for-doubtful-accounts-for-trade-accounts-receivable-details" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent-4" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent" xlink:label="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent-5" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProvisionForDoubtfulAccounts" xlink:label="us-gaap_ProvisionForDoubtfulAccounts" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="occ_statement-statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-summary-of-changes-in-the-allowance-for-doubtful-accounts-for-trade-accounts-receivable-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent-4" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ProvisionForDoubtfulAccounts" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent-5" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-4-inventories-components-of-inventories-details" xlink:href="occ-20230131.xsd#statement-note-4-inventories-components-of-inventories-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://http/20230131/role/statement-note-4-inventories-components-of-inventories-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_statement-statement-note-4-inventories-components-of-inventories-details" xlink:label="occ_statement-statement-note-4-inventories-components-of-inventories-details" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:label="us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryNet" xlink:label="us-gaap_InventoryNet-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryRawMaterialsNetOfReserves" xlink:label="us-gaap_InventoryRawMaterialsNetOfReserves" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventorySuppliesNetOfReserves" xlink:label="us-gaap_InventorySuppliesNetOfReserves" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_InventoryWorkInProcessNetOfReserves" xlink:label="us-gaap_InventoryWorkInProcessNetOfReserves" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="occ_statement-statement-note-4-inventories-components-of-inventories-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_InventoryFinishedGoodsNetOfReserves" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_InventoryWorkInProcessNetOfReserves" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_InventoryRawMaterialsNetOfReserves" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_InventorySuppliesNetOfReserves" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_InventoryNet-3" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-5-product-warranties-details-textual" xlink:href="occ-20230131.xsd#statement-note-5-product-warranties-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://http/20230131/role/statement-note-5-product-warranties-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_NoteToFinancialStatementDetailsTextual" xlink:label="occ_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesMember" xlink:label="us-gaap_AccountsPayableAndAccruedLiabilitiesMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="us-gaap_BalanceSheetLocationAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="us-gaap_BalanceSheetLocationDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyAccrual" xlink:label="us-gaap_ProductWarrantyAccrual-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyExpense" xlink:label="us-gaap_ProductWarrantyExpense-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="occ_NoteToFinancialStatementDetailsTextual" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BalanceSheetLocationAxis" xlink:to="us-gaap_BalanceSheetLocationDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_BalanceSheetLocationAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BalanceSheetLocationAxis" xlink:to="us-gaap_AccountsPayableAndAccruedLiabilitiesMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ProductWarrantyAccrual-2" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ProductWarrantyExpense-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-5-product-warranties-changes-in-accrual-for-product-warranties-details" xlink:href="occ-20230131.xsd#statement-note-5-product-warranties-changes-in-accrual-for-product-warranties-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://http/20230131/role/statement-note-5-product-warranties-changes-in-accrual-for-product-warranties-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_statement-statement-note-5-product-warranties-changes-in-accrual-for-product-warranties-details" xlink:label="occ_statement-statement-note-5-product-warranties-changes-in-accrual-for-product-warranties-details" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyAccrual" xlink:label="us-gaap_ProductWarrantyAccrual-4" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyAccrual" xlink:label="us-gaap_ProductWarrantyAccrual-5" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyAccrualPayments" xlink:label="us-gaap_ProductWarrantyAccrualPayments-n8" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyAccrualPreexistingIncreaseDecrease" xlink:label="us-gaap_ProductWarrantyAccrualPreexistingIncreaseDecrease" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ProductWarrantyAccrualWarrantiesIssued" xlink:label="us-gaap_ProductWarrantyAccrualWarrantiesIssued" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="occ_statement-statement-note-5-product-warranties-changes-in-accrual-for-product-warranties-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/periodStartLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ProductWarrantyAccrual-4" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ProductWarrantyAccrualWarrantiesIssued" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ProductWarrantyAccrualPayments-n8" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ProductWarrantyAccrualPreexistingIncreaseDecrease" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/periodEndLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ProductWarrantyAccrual-5" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-details-textual" xlink:href="occ-20230131.xsd#statement-note-6-longterm-debt-and-notes-payable-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_DebtInstrumentTermExtensions" xlink:label="occ_DebtInstrumentTermExtensions-2" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_LineOfCreditFacilityAdditionalCapacityForAdvances" xlink:label="occ_LineOfCreditFacilityAdditionalCapacityForAdvances-2" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_LineOfCreditFacilityPercentOfEligibleAccounts" xlink:label="occ_LineOfCreditFacilityPercentOfEligibleAccounts-2" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_LineOfCreditFacilityPercentOfEligibleInventory" xlink:label="occ_LineOfCreditFacilityPercentOfEligibleInventory-2" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_LineOfCreditFacilityRestrictedCapacityForAdvances" xlink:label="occ_LineOfCreditFacilityRestrictedCapacityForAdvances-2" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_NorthMillCapitalLlcMember" xlink:label="occ_NorthMillCapitalLlcMember" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_NoteToFinancialStatementDetailsTextual" xlink:label="occ_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_PinnacleFinancialPartnersMember" xlink:label="occ_PinnacleFinancialPartnersMember" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember" xlink:label="occ_VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MaximumMember" xlink:label="srt_MaximumMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeAxis" xlink:label="srt_RangeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_RangeMember" xlink:label="srt_RangeMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityAxis" xlink:label="us-gaap_CreditFacilityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CreditFacilityDomain" xlink:label="us-gaap_CreditFacilityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentBasisSpreadOnVariableRate1" xlink:label="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentInterestRateEffectivePercentage" xlink:label="us-gaap_DebtInstrumentInterestRateEffectivePercentage-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:label="us-gaap_DebtInstrumentInterestRateStatedPercentage-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCredit" xlink:label="us-gaap_LineOfCredit-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityAxis" xlink:label="us-gaap_LineOfCreditFacilityAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityLenderDomain" xlink:label="us-gaap_LineOfCreditFacilityLenderDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity" xlink:label="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity" xlink:label="us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeAxis" xlink:label="us-gaap_LongtermDebtTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeDomain" xlink:label="us-gaap_LongtermDebtTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_PrimeRateMember" xlink:label="us-gaap_PrimeRateMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevolvingCreditFacilityMember" xlink:label="us-gaap_RevolvingCreditFacilityMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VariableRateAxis" xlink:label="us-gaap_VariableRateAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_VariableRateDomain" xlink:label="us-gaap_VariableRateDomain" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="occ_NoteToFinancialStatementDetailsTextual" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_RangeMember" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CreditFacilityAxis" xlink:to="us-gaap_CreditFacilityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="us-gaap_LongtermDebtTypeDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_VariableRateAxis" xlink:to="us-gaap_VariableRateDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityAxis" xlink:to="us-gaap_LineOfCreditFacilityLenderDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_LineOfCreditFacilityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityAxis" xlink:to="occ_PinnacleFinancialPartnersMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_LongtermDebtTypeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="occ_VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_CreditFacilityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_CreditFacilityAxis" xlink:to="us-gaap_RevolvingCreditFacilityMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LineOfCreditFacilityAxis" xlink:to="occ_NorthMillCapitalLlcMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_VariableRateAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_VariableRateAxis" xlink:to="us-gaap_PrimeRateMember" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_RangeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_RangeAxis" xlink:to="srt_MaximumMember" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DebtInstrumentInterestRateStatedPercentage-2" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="occ_LineOfCreditFacilityPercentOfEligibleAccounts-2" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="occ_LineOfCreditFacilityPercentOfEligibleInventory-2" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="occ_LineOfCreditFacilityAdditionalCapacityForAdvances-2" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="occ_LineOfCreditFacilityRestrictedCapacityForAdvances-2" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity-2" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DebtInstrumentBasisSpreadOnVariableRate1-2" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DebtInstrumentInterestRateEffectivePercentage-2" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="occ_DebtInstrumentTermExtensions-2" xlink:type="arc"/>
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LineOfCredit-2" xlink:type="arc"/>
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details" xlink:href="occ-20230131.xsd#statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_NorthCarolinaRealEstateLoanMember" xlink:label="occ_NorthCarolinaRealEstateLoanMember" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_VirginiaRealEstateLoanMember" xlink:label="occ_VirginiaRealEstateLoanMember" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_statement-statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details" xlink:label="occ_statement-statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebt" xlink:label="us-gaap_LongTermDebt-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtCurrent" xlink:label="us-gaap_LongTermDebtCurrent-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongTermDebtNoncurrent" xlink:label="us-gaap_LongTermDebtNoncurrent-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeAxis" xlink:label="us-gaap_LongtermDebtTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeDomain" xlink:label="us-gaap_LongtermDebtTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="occ_statement-statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="us-gaap_LongtermDebtTypeDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_LongtermDebtTypeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="occ_VirginiaRealEstateLoanMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="occ_NorthCarolinaRealEstateLoanMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LongTermDebt-2" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LongTermDebtCurrent-2" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LongTermDebtNoncurrent-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details-parentheticals" xlink:href="occ-20230131.xsd#statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details-parentheticals" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details-parentheticals" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_NorthCarolinaRealEstateLoanMember" xlink:label="occ_NorthCarolinaRealEstateLoanMember" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_VirginiaRealEstateLoanMember" xlink:label="occ_VirginiaRealEstateLoanMember" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_statement-statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details-parentheticals" xlink:label="occ_statement-statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details-parentheticals" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentFaceAmount" xlink:label="us-gaap_DebtInstrumentFaceAmount-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentInterestRateStatedPercentage" xlink:label="us-gaap_DebtInstrumentInterestRateStatedPercentage-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentMaturityDate" xlink:label="us-gaap_DebtInstrumentMaturityDate-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentPeriodicPayment" xlink:label="us-gaap_DebtInstrumentPeriodicPayment-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid" xlink:label="us-gaap_DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeAxis" xlink:label="us-gaap_LongtermDebtTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LongtermDebtTypeDomain" xlink:label="us-gaap_LongtermDebtTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="occ_statement-statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details-parentheticals" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="us-gaap_LongtermDebtTypeDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_LongtermDebtTypeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="occ_VirginiaRealEstateLoanMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LongtermDebtTypeAxis" xlink:to="occ_NorthCarolinaRealEstateLoanMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DebtInstrumentFaceAmount-2" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DebtInstrumentPeriodicPayment-2" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DebtInstrumentInterestRateStatedPercentage-2" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid-2" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_DebtInstrumentMaturityDate-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-7-leases-details-textual" xlink:href="occ-20230131.xsd#statement-note-7-leases-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://http/20230131/role/statement-note-7-leases-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_AccountsPayableAndAccruedLiabilitiesCurrentMember" xlink:label="occ_AccountsPayableAndAccruedLiabilitiesCurrentMember" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_NoteToFinancialStatementDetailsTextual" xlink:label="occ_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_OperatingLeaseForOfficeEquipmentMember" xlink:label="occ_OperatingLeaseForOfficeEquipmentMember" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_OperatingLeaseForOfficeManufacturingAndWarehouseSpaceInPlanoTexasMember" xlink:label="occ_OperatingLeaseForOfficeManufacturingAndWarehouseSpaceInPlanoTexasMember" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_OperatingLeaseForWarehouseSpaceInRoanokeVirginiaMember" xlink:label="occ_OperatingLeaseForWarehouseSpaceInRoanokeVirginiaMember" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_OperatingLeaseRightofUseAssetReduction" xlink:label="occ_OperatingLeaseRightofUseAssetReduction-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AccountsPayableAndAccruedLiabilitiesMember" xlink:label="us-gaap_AccountsPayableAndAccruedLiabilitiesMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AreaOfRealEstateProperty" xlink:label="us-gaap_AreaOfRealEstateProperty-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationAxis" xlink:label="us-gaap_BalanceSheetLocationAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_BalanceSheetLocationDomain" xlink:label="us-gaap_BalanceSheetLocationDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseInterestExpense" xlink:label="us-gaap_FinanceLeaseInterestExpense-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityCurrent" xlink:label="us-gaap_FinanceLeaseLiabilityCurrent-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityNoncurrent" xlink:label="us-gaap_FinanceLeaseLiabilityNoncurrent-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeasePrincipalPayments" xlink:label="us-gaap_FinanceLeasePrincipalPayments-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseRightOfUseAsset" xlink:label="us-gaap_FinanceLeaseRightOfUseAsset-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseRightOfUseAssetAmortization" xlink:label="us-gaap_FinanceLeaseRightOfUseAssetAmortization-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseContractualTermAxis" xlink:label="us-gaap_LeaseContractualTermAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LeaseContractualTermDomain" xlink:label="us-gaap_LeaseContractualTermDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeFinanceLeaseDiscountRate" xlink:label="us-gaap_LesseeFinanceLeaseDiscountRate-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeFinanceLeaseRemainingLeaseTerm" xlink:label="us-gaap_LesseeFinanceLeaseRemainingLeaseTerm-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseTermOfContract" xlink:label="us-gaap_LesseeOperatingLeaseTermOfContract-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseExpense" xlink:label="us-gaap_OperatingLeaseExpense-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityCurrent" xlink:label="us-gaap_OperatingLeaseLiabilityCurrent-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiabilityNoncurrent" xlink:label="us-gaap_OperatingLeaseLiabilityNoncurrent-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeasePayments" xlink:label="us-gaap_OperatingLeasePayments-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseRightOfUseAsset" xlink:label="us-gaap_OperatingLeaseRightOfUseAsset-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent" xlink:label="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1" xlink:label="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherAssetsMember" xlink:label="us-gaap_OtherAssetsMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OtherNoncurrentLiabilitiesMember" xlink:label="us-gaap_OtherNoncurrentLiabilitiesMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability" xlink:label="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="occ_NoteToFinancialStatementDetailsTextual" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BalanceSheetLocationAxis" xlink:to="us-gaap_BalanceSheetLocationDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LeaseContractualTermAxis" xlink:to="us-gaap_LeaseContractualTermDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_LeaseContractualTermAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LeaseContractualTermAxis" xlink:to="occ_OperatingLeaseForOfficeManufacturingAndWarehouseSpaceInPlanoTexasMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LeaseContractualTermAxis" xlink:to="occ_OperatingLeaseForWarehouseSpaceInRoanokeVirginiaMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_LeaseContractualTermAxis" xlink:to="occ_OperatingLeaseForOfficeEquipmentMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_BalanceSheetLocationAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BalanceSheetLocationAxis" xlink:to="us-gaap_OtherAssetsMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BalanceSheetLocationAxis" xlink:to="us-gaap_AccountsPayableAndAccruedLiabilitiesMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BalanceSheetLocationAxis" xlink:to="us-gaap_OtherNoncurrentLiabilitiesMember" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_BalanceSheetLocationAxis" xlink:to="occ_AccountsPayableAndAccruedLiabilitiesCurrentMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AreaOfRealEstateProperty-2" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeOperatingLeaseTermOfContract-2" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseRightOfUseAsset-2" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseLiabilityCurrent-2" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseLiabilityNoncurrent-2" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseExpense-2" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1-2" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent-2" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeasePayments-2" xlink:type="arc"/>
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability-2" xlink:type="arc"/>
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="occ_OperatingLeaseRightofUseAssetReduction-2" xlink:type="arc"/>
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseRightOfUseAsset-2" xlink:type="arc"/>
    <link:presentationArc order="12" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseLiabilityCurrent-2" xlink:type="arc"/>
    <link:presentationArc order="13" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseLiabilityNoncurrent-2" xlink:type="arc"/>
    <link:presentationArc order="14" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseInterestExpense-2" xlink:type="arc"/>
    <link:presentationArc order="15" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseRightOfUseAssetAmortization-2" xlink:type="arc"/>
    <link:presentationArc order="16" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeFinanceLeaseRemainingLeaseTerm-2" xlink:type="arc"/>
    <link:presentationArc order="17" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeFinanceLeaseDiscountRate-2" xlink:type="arc"/>
    <link:presentationArc order="18" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeasePrincipalPayments-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-7-leases-future-payments-due-details" xlink:href="occ-20230131.xsd#statement-note-7-leases-future-payments-due-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://http/20230131/role/statement-note-7-leases-future-payments-due-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_statement-statement-note-7-leases-future-payments-due-details" xlink:label="occ_statement-statement-note-7-leases-future-payments-due-details" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiability" xlink:label="us-gaap_FinanceLeaseLiability" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDue" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDue-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo" xlink:label="us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount" xlink:label="us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount-n8" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue-3" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount" xlink:label="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount-n8" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_OperatingLeaseLiability" xlink:label="us-gaap_OperatingLeaseLiability" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="occ_statement-statement-note-7-leases-future-payments-due-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths-2" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths-2" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo-2" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo-2" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree-2" xlink:type="arc"/>
    <link:presentationArc order="5" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree-2" xlink:type="arc"/>
    <link:presentationArc order="6" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour-2" xlink:type="arc"/>
    <link:presentationArc order="7" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour-2" xlink:type="arc"/>
    <link:presentationArc order="8" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue-3" xlink:type="arc"/>
    <link:presentationArc order="9" preferredLabel="http://www.xbrl.org/2003/role/totalLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseLiabilityPaymentsDue-3" xlink:type="arc"/>
    <link:presentationArc order="10" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount-n8" xlink:type="arc"/>
    <link:presentationArc order="11" preferredLabel="http://www.xbrl.org/2009/role/negatedLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount-n8" xlink:type="arc"/>
    <link:presentationArc order="12" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_OperatingLeaseLiability" xlink:type="arc"/>
    <link:presentationArc order="13" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_FinanceLeaseLiability" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-9-net-income-loss-per-share-details-textual" xlink:href="occ-20230131.xsd#statement-note-9-net-income-loss-per-share-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://http/20230131/role/statement-note-9-net-income-loss-per-share-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_NoteToFinancialStatementDetailsTextual" xlink:label="occ_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount" xlink:label="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="occ_NoteToFinancialStatementDetailsTextual" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-9-net-income-loss-per-share-components-of-reconciliation-of-numerators-and-denominators-net-loss-per-share-details" xlink:href="occ-20230131.xsd#statement-note-9-net-income-loss-per-share-components-of-reconciliation-of-numerators-and-denominators-net-loss-per-share-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://http/20230131/role/statement-note-9-net-income-loss-per-share-components-of-reconciliation-of-numerators-and-denominators-net-loss-per-share-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_statement-statement-note-9-net-income-loss-per-share-components-of-reconciliation-of-numerators-and-denominators-net-loss-per-share-details" xlink:label="occ_statement-statement-note-9-net-income-loss-per-share-components-of-reconciliation-of-numerators-and-denominators-net-loss-per-share-details" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_EarningsPerShareBasic" xlink:label="us-gaap_EarningsPerShareBasic" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NetIncomeLoss" xlink:label="us-gaap_NetIncomeLoss" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_WeightedAverageNumberOfSharesOutstandingBasic" xlink:label="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic-1" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="occ_statement-statement-note-9-net-income-loss-per-share-components-of-reconciliation-of-numerators-and-denominators-net-loss-per-share-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_NetIncomeLoss" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/verboseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_WeightedAverageNumberOfSharesOutstandingBasic-1" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_EarningsPerShareBasic" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-10-segment-information-and-business-and-credit-concentrations-details-textual" xlink:href="occ-20230131.xsd#statement-note-10-segment-information-and-business-and-credit-concentrations-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://http/20230131/role/statement-note-10-segment-information-and-business-and-credit-concentrations-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_ConcentrationRiskNumberOfCustomers" xlink:label="occ_ConcentrationRiskNumberOfCustomers-2" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_CustomerOneMember" xlink:label="occ_CustomerOneMember" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_NoteToFinancialStatementDetailsTextual" xlink:label="occ_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_MajorCustomersAxis" xlink:label="srt_MajorCustomersAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_NameOfMajorCustomerDomain" xlink:label="srt_NameOfMajorCustomerDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskBenchmarkDomain" xlink:label="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:label="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskByTypeAxis" xlink:label="us-gaap_ConcentrationRiskByTypeAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskPercentage1" xlink:label="us-gaap_ConcentrationRiskPercentage1-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ConcentrationRiskTypeDomain" xlink:label="us-gaap_ConcentrationRiskTypeDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_CustomerConcentrationRiskMember" xlink:label="us-gaap_CustomerConcentrationRiskMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_SalesRevenueNetMember" xlink:label="us-gaap_SalesRevenueNetMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="occ_NoteToFinancialStatementDetailsTextual" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_MajorCustomersAxis" xlink:to="srt_NameOfMajorCustomerDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_ConcentrationRiskTypeDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_ConcentrationRiskBenchmarkDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByBenchmarkAxis" xlink:to="us-gaap_SalesRevenueNetMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_ConcentrationRiskByTypeAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_ConcentrationRiskByTypeAxis" xlink:to="us-gaap_CustomerConcentrationRiskMember" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_MajorCustomersAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_MajorCustomersAxis" xlink:to="occ_CustomerOneMember" xlink:type="arc"/>
    <link:presentationArc order="3" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="4" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ConcentrationRiskPercentage1-2" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="occ_ConcentrationRiskNumberOfCustomers-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-11-revenue-recognition-details-textual" xlink:href="occ-20230131.xsd#statement-note-11-revenue-recognition-details-textual" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://http/20230131/role/statement-note-11-revenue-recognition-details-textual" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_NoteToFinancialStatementDetailsTextual" xlink:label="occ_NoteToFinancialStatementDetailsTextual" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerLiability" xlink:label="us-gaap_ContractWithCustomerLiability-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_ContractWithCustomerRefundLiability" xlink:label="us-gaap_ContractWithCustomerRefundLiability-2" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="occ_NoteToFinancialStatementDetailsTextual" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ContractWithCustomerLiability-2" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/terseLabel" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_ContractWithCustomerRefundLiability-2" xlink:type="arc"/>
  </link:presentationLink>
  <link:roleRef roleURI="http://http/20230131/role/statement-note-11-revenue-recognition-revenue-attributed-to-united-states-and-all-other-countries-details" xlink:href="occ-20230131.xsd#statement-note-11-revenue-recognition-revenue-attributed-to-united-states-and-all-other-countries-details" xlink:type="simple"/>
  <link:presentationLink xlink:role="http://http/20230131/role/statement-note-11-revenue-recognition-revenue-attributed-to-united-states-and-all-other-countries-details" xlink:type="extended">
    <link:loc xlink:href="https://xbrl.sec.gov/country/2022/country-2022.xsd#country_US" xlink:label="country_US" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_EntityDomain" xlink:label="dei_EntityDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.sec.gov/dei/2022/dei-2022.xsd#dei_LegalEntityAxis" xlink:label="dei_LegalEntityAxis" xlink:type="locator"/>
    <link:loc xlink:href="occ-20230131.xsd#occ_statement-statement-note-11-revenue-recognition-revenue-attributed-to-united-states-and-all-other-countries-details" xlink:label="occ_statement-statement-note-11-revenue-recognition-revenue-attributed-to-united-states-and-all-other-countries-details" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_SegmentGeographicalDomain" xlink:label="srt_SegmentGeographicalDomain" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd#srt_StatementGeographicalAxis" xlink:label="srt_StatementGeographicalAxis" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_NonUsMember" xlink:label="us-gaap_NonUsMember" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:label="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementLineItems" xlink:label="us-gaap_StatementLineItems" xlink:type="locator"/>
    <link:loc xlink:href="https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd#us-gaap_StatementTable" xlink:label="us-gaap_StatementTable" xlink:type="locator"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="occ_statement-statement-note-11-revenue-recognition-revenue-attributed-to-united-states-and-all-other-countries-details" xlink:to="us-gaap_StatementTable" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="dei_LegalEntityAxis" xlink:to="dei_EntityDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_StatementGeographicalAxis" xlink:to="srt_SegmentGeographicalDomain" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="srt_StatementGeographicalAxis" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_StatementGeographicalAxis" xlink:to="country_US" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="srt_StatementGeographicalAxis" xlink:to="us-gaap_NonUsMember" xlink:type="arc"/>
    <link:presentationArc order="1" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="dei_LegalEntityAxis" xlink:type="arc"/>
    <link:presentationArc order="2" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementTable" xlink:to="us-gaap_StatementLineItems" xlink:type="arc"/>
    <link:presentationArc order="0" preferredLabel="http://www.xbrl.org/2003/role/label" xbrldt:closed="true" xlink:arcrole="http://www.xbrl.org/2003/arcrole/parent-child" xlink:from="us-gaap_StatementLineItems" xlink:to="us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax" xlink:type="arc"/>
  </link:presentationLink>
</link:linkbase>
</XBRL>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>12
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140382406820080">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Document And Entity Information - shares<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Mar. 08, 2023</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentInformationLineItems', window );"><strong>Document Information [Line Items]</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentType', window );">Document Type</a></td>
<td class="text">10-Q<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentQuarterlyReport', window );">Document Quarterly Report</a></td>
<td class="text">true<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentPeriodEndDate', window );">Document Period End Date</a></td>
<td class="text">Jan. 31,  2023<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_DocumentTransitionReport', window );">Document Transition Report</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityFileNumber', window );">Entity File Number</a></td>
<td class="text">0-27022<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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">OPTICAL CABLE 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">VA<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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">54-1237042<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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">5290 Concourse Drive<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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">Roanoke<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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">VA<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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">24019<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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">540<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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">265&#8209;0690<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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, no par value<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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">OCC<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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_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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityInteractiveDataCurrent', window );">Entity Interactive Data Current</a></td>
<td class="text">Yes<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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_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="ro">
<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="re">
<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="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityShellCompany', window );">Entity Shell Company</a></td>
<td class="text">false<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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_EntityCommonStockSharesOutstanding', window );">Entity Common Stock, Shares Outstanding (in shares)</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">7,868,568<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_dei_EntityCentralIndexKey', window );">Entity Central Index Key</a></td>
<td class="text">0001000230<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<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">--10-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">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_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_CurrentFiscalYearEndDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>End date of current fiscal year in the format --MM-DD.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_CurrentFiscalYearEndDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:gMonthDayItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentFiscalPeriodFocus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Fiscal period values are FY, Q1, Q2, and Q3.  1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentFiscalPeriodFocus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:fiscalPeriodItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentFiscalYearFocus">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentFiscalYearFocus</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:gYearItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentInformationLineItems">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentInformationLineItems</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentPeriodEndDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period.  The format of the date is YYYY-MM-DD.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentPeriodEndDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:dateItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentQuarterlyReport">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true only for a form used as an quarterly report.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Form 10-Q<br> -Number 240<br> -Section 308<br> -Subsection a<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentQuarterlyReport</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentTransitionReport">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Boolean flag that is true only for a form used as a transition report.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/presentationRef<br> -Publisher SEC<br> -Name Forms 10-K, 10-Q, 20-F<br> -Number 240<br> -Section 13<br> -Subsection a-1<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentTransitionReport</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:booleanItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_DocumentType">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_DocumentType</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dei:submissionTypeItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressAddressLine1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Address Line 1 such as Attn, Building Name, Street Name</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressAddressLine1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_EntityAddressCityOrTown">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Name of the City or Town</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">dei_EntityAddressCityOrTown</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>dei_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:normalizedStringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_dei_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>13
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140382408220752">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Condensed Consolidated Balance Sheets (Unaudited) - USD ($)<br></strong></div></th>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Oct. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsCurrentAbstract', window );"><strong>Current assets:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashAndCashEquivalentsAtCarryingValue', window );">Cash</a></td>
<td class="nump">$ 186,081<span></span>
</td>
<td class="nump">$ 215,936<span></span>
</td>
</tr>
<tr class="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 receivable, net of allowance for doubtful accounts of $59,856 at January 31, 2023 and $69,643 at October 31, 2022</a></td>
<td class="nump">9,910,936<span></span>
</td>
<td class="nump">10,963,753<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherReceivables', window );">Other receivables</a></td>
<td class="nump">140,945<span></span>
</td>
<td class="nump">37,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_InventoryNet', window );">Inventories</a></td>
<td class="nump">22,261,385<span></span>
</td>
<td class="nump">19,438,766<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PrepaidExpenseAndOtherAssetsCurrent', window );">Prepaid expenses and other assets</a></td>
<td class="nump">609,848<span></span>
</td>
<td class="nump">540,225<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AssetsCurrent', window );">Total current assets</a></td>
<td class="nump">33,109,195<span></span>
</td>
<td class="nump">31,196,122<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PropertyPlantAndEquipmentNet', window );">Property and equipment, net</a></td>
<td class="nump">7,302,218<span></span>
</td>
<td class="nump">7,390,285<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IntangibleAssetsNetExcludingGoodwill', window );">Intangible assets, net</a></td>
<td class="nump">606,716<span></span>
</td>
<td class="nump">618,142<span></span>
</td>
</tr>
<tr class="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">1,483,221<span></span>
</td>
<td class="nump">1,353,257<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">42,501,350<span></span>
</td>
<td class="nump">40,557,806<span></span>
</td>
</tr>
<tr class="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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LoansPayableCurrent', window );">Current installments of long-term debt</a></td>
<td class="nump">341,522<span></span>
</td>
<td class="nump">338,094<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent', window );">Accounts payable and accrued expenses</a></td>
<td class="nump">5,558,085<span></span>
</td>
<td class="nump">5,354,150<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeRelatedLiabilitiesCurrent', window );">Accrued compensation and payroll taxes</a></td>
<td class="nump">1,763,863<span></span>
</td>
<td class="nump">1,772,551<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TaxesPayableCurrent', window );">Income taxes payable</a></td>
<td class="nump">50,379<span></span>
</td>
<td class="nump">18,098<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LiabilitiesCurrent', window );">Total current liabilities</a></td>
<td class="nump">7,713,849<span></span>
</td>
<td class="nump">7,482,893<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermLineOfCredit', window );">Note payable, revolver - noncurrent</a></td>
<td class="nump">6,823,065<span></span>
</td>
<td class="nump">5,999,663<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermLoansPayable', window );">Long-term debt, excluding current installments</a></td>
<td class="nump">4,104,190<span></span>
</td>
<td class="nump">4,190,508<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherLiabilitiesNoncurrent', window );">Other noncurrent liabilities</a></td>
<td class="nump">856,222<span></span>
</td>
<td class="nump">725,024<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_Liabilities', window );">Total liabilities</a></td>
<td class="nump">19,497,326<span></span>
</td>
<td class="nump">18,398,088<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockholdersEquityAbstract', window );"><strong>Shareholders&#8217; equity:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockValue', window );">Preferred stock, no par value, authorized 1,000,000 shares; none issued and outstanding</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_CommonStockValue', window );">Common stock, no par value, authorized 50,000,000 shares; issued and outstanding 7,868,568 shares at January 31, 2023 and 7,893,194 shares at October 31, 2022</a></td>
<td class="nump">14,672,827<span></span>
</td>
<td class="nump">14,638,505<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RetainedEarningsAccumulatedDeficit', window );">Retained earnings</a></td>
<td class="nump">8,331,197<span></span>
</td>
<td class="nump">7,521,213<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_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest', window );">Total shareholders&#8217; equity</a></td>
<td class="nump">23,004,024<span></span>
</td>
<td class="nump">22,159,718<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingencies', window );">Commitments and Contingencies</a></td>
<td class="text"> <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_LiabilitiesAndStockholdersEquity', window );">Total liabilities and shareholders&#8217; equity</a></td>
<td class="nump">$ 42,501,350<span></span>
</td>
<td class="nump">$ 40,557,806<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_AccountsPayableAndAccruedLiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 values as of the balance sheet date of obligations incurred through that date and due within one year (or the operating cycle, if longer), including liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received, taxes, interest, rent and utilities, accrued salaries and bonuses, payroll taxes and fringe benefits.</p></div>
<a href="javascript: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_AccountsPayableAndAccruedLiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_Assets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(11))<br> -URI https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(12))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 9: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 14: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -URI https://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(18))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Assets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6676-107765<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 14: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -URI https://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(9))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AssetsCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AssetsCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashAndCashEquivalentsAtCarryingValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3044-108585<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6676-107765<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CashAndCashEquivalentsAtCarryingValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommitmentsAndContingencies">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Represents the caption on the face of the balance sheet to indicate that the entity has entered into (1) purchase or supply arrangements that will require expending a portion of its resources to meet the terms thereof, and (2) is exposed to potential losses or, less frequently, gains, arising from (a) possible claims against a company's resources due to future performance under contract terms, and (b) possible losses or likely gains from uncertainties that will ultimately be resolved when one or more future events that are deemed likely to occur do occur or fail to occur.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.25)<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03.(a),19)<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03.17)<br> -URI https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommitmentsAndContingencies</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommonStockValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_IntangibleAssetsNetExcludingGoodwill">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 of all intangible assets, excluding goodwill, as of the balance sheet date, net of accumulated amortization and impairment charges.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph ((a)(1),(b))<br> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6388964&amp;loc=d3e16212-109274<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IntangibleAssetsNetExcludingGoodwill</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(6))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6676-107765<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InventoryNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_Liabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Sum of the carrying amounts as of the balance sheet date of all liabilities that are recognized. Liabilities are probable future sacrifices of economic benefits arising from present obligations of an entity to transfer assets or provide services to other entities in the future.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.19-26)<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 3: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -URI https://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 20: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_Liabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesAndStockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(23))<br> -URI https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(25))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br><br>Reference 5: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(32))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesAndStockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 4: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124433192&amp;loc=SL2890621-112765<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 45<br> -Paragraph 25<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=116870748&amp;loc=SL6758485-165988<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 9: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (bb)<br> -URI https://asc.fasb.org/extlink&amp;oid=123419778&amp;loc=d3e5710-111685<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 17: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section 45<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=124098289&amp;loc=d3e6904-107765<br><br>Reference 21: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.21)<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LiabilitiesCurrentAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LiabilitiesCurrentAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LoansPayableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 portion of long-term loans payable 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>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_LoansPayableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_LongTermLineOfCredit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The carrying value as of the balance sheet date of the noncurrent portion of long-term obligations drawn from a line of credit, which is a bank's commitment to make loans up to a specific amount. Examples of items that might be included in the application of this element may consist of letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to a maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line. Includes short-term obligations that would normally be classified as current liabilities but for which (a) postbalance sheet date issuance of a long term obligation to refinance the short term obligation on a long term basis, or (b) the enterprise has entered into a financing agreement that clearly permits the enterprise to refinance the short-term obligation on a long term basis and the following conditions are met (1) the agreement does not expire within 1 year and is not cancelable by the lender except for violation of an objectively determinable provision, (2) no violation exists at the BS date, and (3) the lender has entered into the financing agreement is expected to be financially capable of honoring the agreement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22)<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section 45<br> -Paragraph 14<br> -URI https://asc.fasb.org/extlink&amp;oid=99376301&amp;loc=d3e1336-112600<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section 45<br> -Paragraph 13<br> -URI https://asc.fasb.org/extlink&amp;oid=99376301&amp;loc=d3e1314-112600<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermLineOfCredit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_LongTermLoansPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 loans payable (with maturities initially due after one year or beyond the operating cycle if longer), excluding current portion.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22)<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermLoansPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_OtherLiabilitiesNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 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_OtherLiabilitiesNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_OtherReceivables">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount due from parties in nontrade transactions, 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(3)(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_OtherReceivables</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PreferredStockValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Aggregate par or stated value of issued nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable preferred shares, par value and other disclosure concepts are in another section within stockholders' equity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockValue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PrepaidExpenseAndOtherAssetsCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of asset related to consideration paid in advance for costs that provide economic benefits in future periods, and amount of other assets that are expected to be realized or consumed within one year or the normal operating cycle, if longer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(9))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PrepaidExpenseAndOtherAssetsCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PropertyPlantAndEquipmentNet">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 360<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6391035&amp;loc=d3e2868-110229<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(8))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 360<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=124429447&amp;loc=SL124453093-239630<br><br>Reference 4: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PropertyPlantAndEquipmentNet</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RetainedEarningsAccumulatedDeficit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cumulative amount of the reporting entity's undistributed earnings or deficit.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30)(a)(3))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(a)(23)(a)(4))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (h)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI https://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 40<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (g)(2)(i)<br> -URI https://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RetainedEarningsAccumulatedDeficit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquityAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquityAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 stockholders' equity (deficit), net of receivables from officers, directors, owners, and affiliates of the entity, attributable to both the parent and noncontrolling interests. Amount excludes temporary equity. Alternate caption for the concept is 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/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 45<br> -Paragraph 24<br> -URI https://asc.fasb.org/extlink&amp;oid=124436220&amp;loc=d3e21930-107793<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 S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI https://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 45<br> -Paragraph 23<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124436220&amp;loc=d3e21914-107793<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 7<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22644-107794<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 50<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124442411-227067<br><br>Reference 6: 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 (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=122640432&amp;loc=SL121648383-210437<br><br>Reference 7: 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 (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126987489&amp;loc=SL124442142-165695<br><br>Reference 8: 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 (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126987489&amp;loc=SL124442142-165695<br><br>Reference 9: 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 16<br> -URI https://asc.fasb.org/extlink&amp;oid=126929396&amp;loc=SL4568740-111683<br><br>Reference 10: 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)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL123482106-238011<br><br>Reference 11: 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 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124436220&amp;loc=d3e21711-107793<br><br>Reference 13: 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 14: 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 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 50<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=6450520&amp;loc=d3e32583-110901<br><br>Reference 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 (d)(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 848<br> -SubTopic 10<br> -Section 65<br> -Paragraph 2<br> -Subparagraph (a)(3)(iii)(03)<br> -URI https://asc.fasb.org/extlink&amp;oid=125980421&amp;loc=SL125981372-237846<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 17<br> -URI https://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32136-110900<br><br>Reference 19: 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 (d)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=126983759&amp;loc=SL121830611-158277<br><br>Reference 20: 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 (f)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 65<br> -Paragraph 15<br> -Subparagraph (f)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=128097895&amp;loc=SL121327923-165333<br><br>Reference 22: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 810<br> -SubTopic 10<br> -Section 55<br> -Paragraph 4I<br> -URI https://asc.fasb.org/extlink&amp;oid=120409616&amp;loc=SL4590271-111686<br><br>Reference 23: 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 (f)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=124501264&amp;loc=SL117420844-207641<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 830<br> -SubTopic 30<br> -Section 45<br> -Paragraph 20<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=118261656&amp;loc=d3e32211-110900<br><br>Reference 25: 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 15<br> -URI https://asc.fasb.org/extlink&amp;oid=126929396&amp;loc=SL4568447-111683<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 65<br> -Paragraph 15<br> -Subparagraph (f)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=128097895&amp;loc=SL121327923-165333<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 1<br> -Subparagraph (b)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 65<br> -Paragraph 15<br> -Subparagraph (e)<br> -URI https://asc.fasb.org/extlink&amp;oid=128097895&amp;loc=SL121327923-165333<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_TaxesPayableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Carrying value as of the balance sheet date of obligations incurred and payable for statutory income, sales, use, payroll, excise, real, property and other taxes. 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,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_TaxesPayableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>14
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140382406567136">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Condensed Consolidated Balance Sheets (Unaudited) (Parentheticals) - USD ($)<br> $ / shares in Thousands</strong></div></th>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Oct. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent', window );">Accounts Receivable, Allowance for Credit Loss, Current</a></td>
<td class="nump">$ 59,856<span></span>
</td>
<td class="nump">$ 69,643<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockNoParValue', window );">Preferred Stock, No Par Value (in dollars per share)</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_PreferredStockSharesAuthorized', window );">Preferred Stock, Shares Authorized (in shares)</a></td>
<td class="nump">1,000,000<span></span>
</td>
<td class="nump">1,000,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockSharesIssued', window );">Preferred Stock, Shares Issued (in shares)</a></td>
<td class="nump">0<span></span>
</td>
<td class="nump">0<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PreferredStockSharesOutstanding', window );">Preferred Stock, Shares Outstanding, Ending Balance (in shares)</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_CommonStockNoParValue', window );">Common Stock, No Par Value (in dollars per share)</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_CommonStockSharesAuthorized', window );">Common Stock, Shares Authorized (in shares)</a></td>
<td class="nump">50,000,000<span></span>
</td>
<td class="nump">50,000,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommonStockSharesOutstanding', window );">Common Stock, Shares, Outstanding, Ending Balance (in shares)</a></td>
<td class="nump">7,868,568<span></span>
</td>
<td class="nump">7,893,194<span></span>
</td>
</tr>
<tr class="re">
<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 (in shares)</a></td>
<td class="nump">7,868,568<span></span>
</td>
<td class="nump">7,893,194<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of allowance for credit loss on accounts receivable, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=123577603&amp;loc=d3e5074-111524<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=124255206&amp;loc=SL82895884-210446<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(4))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommonStockNoParValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 per share of no-par value 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_CommonStockNoParValue</td>
</tr>
<tr>
<td style="padding-right: 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_PreferredStockNoParValue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 per share of no-par value 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://www.xbrl.org/2009/role/commonPracticeRef<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><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_PreferredStockNoParValue</td>
</tr>
<tr>
<td style="padding-right: 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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>15
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140382404828432">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Condensed Consolidated Statements of Operations (Unaudited) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Net sales</a></td>
<td class="nump">$ 18,283,675<span></span>
</td>
<td class="nump">$ 14,440,295<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CostOfGoodsAndServicesSold', window );">Cost of goods sold</a></td>
<td class="nump">11,762,466<span></span>
</td>
<td class="nump">10,394,443<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GrossProfit', window );">Gross profit</a></td>
<td class="nump">6,521,209<span></span>
</td>
<td class="nump">4,045,852<span></span>
</td>
</tr>
<tr class="ro">
<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">5,455,466<span></span>
</td>
<td class="nump">4,780,199<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_occ_RoyaltyRevenueExpense', window );">Royalty expense, net</a></td>
<td class="nump">6,586<span></span>
</td>
<td class="nump">6,958<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AmortizationOfIntangibleAssets', window );">Amortization of intangible assets</a></td>
<td class="nump">13,221<span></span>
</td>
<td class="nump">12,095<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_OperatingIncomeLoss', window );">Income (loss) from operations</a></td>
<td class="nump">1,045,936<span></span>
</td>
<td class="num">(753,400)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherIncomeAndExpensesAbstract', window );"><strong>Other income (expense), net:</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_InterestExpense', window );">Interest expense, net</a></td>
<td class="num">(270,623)<span></span>
</td>
<td class="num">(158,260)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OtherNonoperatingIncomeExpense', window );">Other, net</a></td>
<td class="nump">67,135<span></span>
</td>
<td class="num">(11,385)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NonoperatingIncomeExpense', window );">Other expense, net</a></td>
<td class="num">(203,488)<span></span>
</td>
<td class="num">(169,645)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest', window );">Income (loss) before income taxes</a></td>
<td class="nump">842,448<span></span>
</td>
<td class="num">(923,045)<span></span>
</td>
</tr>
<tr class="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 expense</a></td>
<td class="nump">32,464<span></span>
</td>
<td class="nump">12,748<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income (loss)</a></td>
<td class="nump">$ 809,984<span></span>
</td>
<td class="num">$ (935,793)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasic', window );">Net income (loss) per share: Basic and diluted (in dollars per share)</a></td>
<td class="nump">$ 0.10<span></span>
</td>
<td class="num">$ (0.12)<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_occ_RoyaltyRevenueExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Net amount of revenue (expense) recognized during the period related to royalty transactions.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">occ_RoyaltyRevenueExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>occ_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_AmortizationOfIntangibleAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate expense charged against earnings to allocate the cost of intangible assets (nonphysical assets not used in production) in a systematic and rational manner to the periods expected to benefit from such assets. As a noncash expense, this element is added back to net income when calculating cash provided by or used in operations using the indirect method.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (a)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=66006027&amp;loc=d3e16323-109275<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 350<br> -SubTopic 30<br> -Section 45<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=6388964&amp;loc=d3e16225-109274<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AmortizationOfIntangibleAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_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_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_IncomeTaxExpenseBenefit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SAB TOPIC 6.I.7)<br> -URI https://asc.fasb.org/extlink&amp;oid=122134291&amp;loc=d3e330036-122817<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 10<br> -Section 50<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=121826272&amp;loc=d3e32672-109319<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (h)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(h))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 740<br> -SubTopic 20<br> -Section 45<br> -Paragraph 2<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123586238&amp;loc=d3e38679-109324<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(9))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 8: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncomeTaxExpenseBenefit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InterestExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of the cost of borrowed funds accounted for as interest expense.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=6450988&amp;loc=d3e26243-108391<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 835<br> -SubTopic 30<br> -Section 45<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=124435984&amp;loc=d3e28555-108399<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (210.5-03(11))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04.9)<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_InterestExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NetIncomeLoss">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-04(22))<br> -URI https://asc.fasb.org/extlink&amp;oid=120399700&amp;loc=SL114874048-224260<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22595-107794<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 220<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-04(18))<br> -URI https://asc.fasb.org/extlink&amp;oid=120400993&amp;loc=SL114874131-224263<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 815<br> -SubTopic 40<br> -Section 65<br> -Paragraph 1<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=126732423&amp;loc=SL123482106-238011<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=124431353&amp;loc=SL124452729-227067<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 8: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03(20))<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br><br>Reference 9: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br><br>Reference 10: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (b)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22499-107794<br><br>Reference 11: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 12: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 13: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 14: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(i))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 15: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 9<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22663-107794<br><br>Reference 16: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iv))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 17: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(4)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 18: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 19: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22583-107794<br><br>Reference 20: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 21: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 45<br> -Paragraph 60B<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126958026&amp;loc=SL5780133-109256<br><br>Reference 22: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br><br>Reference 23: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22658-107794<br><br>Reference 24: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1A<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669619-108580<br><br>Reference 25: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 31<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8924-108599<br><br>Reference 26: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 27: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 250<br> -SubTopic 10<br> -Section 50<br> -Paragraph 11<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=124431687&amp;loc=d3e22694-107794<br><br>Reference 28: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 205<br> -SubTopic 20<br> -Section 50<br> -Paragraph 7<br> -URI https://asc.fasb.org/extlink&amp;oid=109222650&amp;loc=SL51721683-107760<br><br>Reference 29: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1B<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126968391&amp;loc=SL7669625-108580<br><br>Reference 30: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 31: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1A<br> -Subparagraph (SX 210.13-01(a)(5))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442526-122756<br><br>Reference 32: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(B))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 33: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1B<br> -Subparagraph (SX 210.13-02(a)(4)(iii)(A))<br> -URI https://asc.fasb.org/extlink&amp;oid=126975872&amp;loc=SL124442552-122756<br><br>Reference 34: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 30<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br><br>Reference 35: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8933-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NetIncomeLoss</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_NonoperatingIncomeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate amount of income or expense from ancillary business-related activities (that is to say, excluding major activities considered part of the normal operations of the business).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.7)<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_NonoperatingIncomeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_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_us-gaap_OtherNonoperatingIncomeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of income (expense) related to nonoperating activities, classified as other.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 220<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SX 210.5-03.9)<br> -URI https://asc.fasb.org/extlink&amp;oid=126953954&amp;loc=SL114868664-224227<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OtherNonoperatingIncomeExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, including tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value-added and excise.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130545-203045<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -URI 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 (a)<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 30<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -URI 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 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 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 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 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_RevenueFromContractWithCustomerIncludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_SellingGeneralAndAdministrativeExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The aggregate total costs related to selling a firm's product and services, as well as all other general and administrative expenses. Direct selling expenses (for example, credit, warranty, and advertising) are expenses that can be directly linked to the sale of specific products. Indirect selling expenses are expenses that cannot be directly linked to the sale of specific products, for example telephone expenses, Internet, and postal charges. General and administrative expenses include salaries of non-sales personnel, rent, utilities, communication, etc.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>16
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140382406735872">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Condensed Consolidated Statements of Shareholders' Equity (Unaudited) - USD ($)<br></strong></div></th>
<th class="th"><div>Common Stock [Member]</div></th>
<th class="th"><div>Retained Earnings [Member]</div></th>
<th class="th"><div>Total</div></th>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Balances at October 31, 2022 (in shares) at Oct. 31, 2021</a></td>
<td class="nump">7,897,477<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 );">Balances at October 31, 2022 at Oct. 31, 2021</a></td>
<td class="nump">$ 14,337,649<span></span>
</td>
<td class="nump">$ 7,868,304<span></span>
</td>
<td class="nump">$ 22,205,953<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation', window );">Share-based compensation, net (in shares)</a></td>
<td class="num">(47,479)<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation', window );">Share-based compensation, net</a></td>
<td class="nump">$ 19,803<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">19,803<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="num">(935,793)<span></span>
</td>
<td class="num">(935,793)<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Balances at January 31, 2023 (in shares) at Jan. 31, 2022</a></td>
<td class="nump">7,849,998<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 );">Balances at January 31, 2023 at Jan. 31, 2022</a></td>
<td class="nump">$ 14,357,452<span></span>
</td>
<td class="nump">6,932,511<span></span>
</td>
<td class="nump">21,289,963<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Balances at October 31, 2022 (in shares) at Oct. 31, 2022</a></td>
<td class="nump">7,893,194<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 );">Balances at October 31, 2022 at Oct. 31, 2022</a></td>
<td class="nump">$ 14,638,505<span></span>
</td>
<td class="nump">7,521,213<span></span>
</td>
<td class="nump">22,159,718<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation', window );">Share-based compensation, net (in shares)</a></td>
<td class="num">(24,626)<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_StockIssuedDuringPeriodValueShareBasedCompensation', window );">Share-based compensation, net</a></td>
<td class="nump">$ 34,322<span></span>
</td>
<td class="nump">0<span></span>
</td>
<td class="nump">34,322<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income</a></td>
<td class="nump">$ 0<span></span>
</td>
<td class="nump">809,984<span></span>
</td>
<td class="nump">809,984<span></span>
</td>
</tr>
<tr class="rc">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_SharesOutstanding', window );">Balances at January 31, 2023 (in shares) at Jan. 31, 2023</a></td>
<td class="nump">7,868,568<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 );">Balances at January 31, 2023 at Jan. 31, 2023</a></td>
<td class="nump">$ 14,672,827<span></span>
</td>
<td class="nump">$ 8,331,197<span></span>
</td>
<td class="nump">$ 23,004,024<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_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_SharesOutstanding">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of shares issued which are neither cancelled nor held in the treasury.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharesOutstanding</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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, after forfeiture, of shares or units issued under share-based payment arrangement. Excludes shares or units issued under employee stock ownership plan (ESOP).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126973232&amp;loc=d3e21463-112644<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI https://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-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_StockIssuedDuringPeriodValueShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Value, after forfeiture, of shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP).</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 505<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.3-04)<br> -URI https://asc.fasb.org/extlink&amp;oid=120397183&amp;loc=d3e187085-122770<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(28))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (d)(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_StockIssuedDuringPeriodValueShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_StockholdersEquity">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which are attributable to the parent. The amount of the economic entity's stockholders' equity attributable to the parent excludes the amount of stockholders' equity which is allocable to that ownership interest in subsidiary equity which is not attributable to the parent (noncontrolling interest, minority interest). This excludes temporary equity and is sometimes called permanent equity.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 235<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.4-08(g)(1)(ii))<br> -URI https://asc.fasb.org/extlink&amp;oid=120395691&amp;loc=d3e23780-122690<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 852<br> -SubTopic 10<br> -Section 55<br> -Paragraph 10<br> -URI https://asc.fasb.org/extlink&amp;oid=84165509&amp;loc=d3e56426-112766<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section S99<br> -Paragraph 2<br> -Subparagraph (SAB Topic 4.E)<br> -URI https://asc.fasb.org/extlink&amp;oid=122038336&amp;loc=d3e74512-122707<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(31))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(29))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 6: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(30))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 7: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 28<br> -Subparagraph (f)<br> -URI https://asc.fasb.org/extlink&amp;oid=123596393&amp;loc=d3e14064-108612<br><br>Reference 8: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 323<br> -SubTopic 10<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=114001798&amp;loc=d3e33918-111571<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_StockholdersEquity</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>17
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140382401296896">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Condensed Consolidated Statements of Cash Flows (Unaudited) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract', window );"><strong>Cash flows from operating activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income (loss)</a></td>
<td class="nump">$ 809,984<span></span>
</td>
<td class="num">$ (935,793)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract', window );"><strong>Adjustments to reconcile net income (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">248,196<span></span>
</td>
<td class="nump">285,954<span></span>
</td>
</tr>
<tr class="re">
<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 );">Bad debt recovery</a></td>
<td class="num">(9,787)<span></span>
</td>
<td class="num">(4,328)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ShareBasedCompensation', window );">Share-based compensation expense</a></td>
<td class="nump">135,041<span></span>
</td>
<td class="nump">124,439<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_GainLossOnSaleOfPropertyPlantEquipment', window );">Loss on sale of property and equipment</a></td>
<td class="nump">10,065<span></span>
</td>
<td class="nump">12,008<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOperatingAssetsAbstract', window );"><strong>(Increase) decrease in:</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">1,062,604<span></span>
</td>
<td class="num">(11,897)<span></span>
</td>
</tr>
<tr class="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="num">(103,503)<span></span>
</td>
<td class="nump">20,708<span></span>
</td>
</tr>
<tr class="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">(2,822,619)<span></span>
</td>
<td class="num">(1,603,095)<span></span>
</td>
</tr>
<tr class="ro">
<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 assets</a></td>
<td class="num">(69,623)<span></span>
</td>
<td class="nump">77,448<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOtherOperatingAssets', window );">Other assets</a></td>
<td class="num">(199,075)<span></span>
</td>
<td class="nump">96,340<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOperatingLiabilitiesAbstract', window );"><strong>Increase (decrease) in:</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_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities', window );">Accounts payable and accrued expenses</a></td>
<td class="nump">119,602<span></span>
</td>
<td class="nump">457,661<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities', window );">Accrued compensation and payroll taxes</a></td>
<td class="num">(8,688)<span></span>
</td>
<td class="nump">114,430<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable', window );">Income taxes payable</a></td>
<td class="nump">32,281<span></span>
</td>
<td class="nump">12,151<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities', window );">Other noncurrent liabilities</a></td>
<td class="nump">165,398<span></span>
</td>
<td class="num">(510,513)<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">(630,124)<span></span>
</td>
<td class="num">(1,864,487)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract', window );"><strong>Cash flows from investing activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquirePropertyPlantAndEquipment', window );">Purchase of and deposits for the purchase of property and equipment</a></td>
<td class="num">(104,675)<span></span>
</td>
<td class="num">(73,286)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PaymentsToAcquireIntangibleAssets', window );">Investment in intangible assets</a></td>
<td class="num">(1,795)<span></span>
</td>
<td class="num">(8,006)<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInInvestingActivities', window );">Net cash used in investing activities</a></td>
<td class="num">(106,470)<span></span>
</td>
<td class="num">(81,292)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract', window );"><strong>Cash flows from financing activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Principal payments on long-term debt</a></td>
<td class="num">(82,891)<span></span>
</td>
<td class="num">(79,597)<span></span>
</td>
</tr>
<tr class="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 );">Payments for financing costs</a></td>
<td class="num">(25,000)<span></span>
</td>
<td class="num">(25,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_FinanceLeasePrincipalPayments', window );">Principal payments on financing lease</a></td>
<td class="num">(8,773)<span></span>
</td>
<td class="num">(8,366)<span></span>
</td>
</tr>
<tr class="rou">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetCashProvidedByUsedInFinancingActivities', window );">Net cash provided by financing activities</a></td>
<td class="nump">706,739<span></span>
</td>
<td class="nump">1,951,534<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect', window );">Net increase (decrease) in cash</a></td>
<td class="num">(29,855)<span></span>
</td>
<td class="nump">5,755<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations', window );">Cash at beginning of period</a></td>
<td class="nump">215,936<span></span>
</td>
<td class="nump">132,249<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations', window );">Cash at end of period</a></td>
<td class="nump">186,081<span></span>
</td>
<td class="nump">138,004<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=occ_PinnacleFinancialPartnersMember', window );">Pinnacle Financial Partners [Member] | Virginia Real Estate Loan and North Carolina Real Estate Loan [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_NetCashProvidedByUsedInFinancingActivitiesAbstract', window );"><strong>Cash flows from financing activities:</strong></a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProceedsFromNotesPayable', window );">Proceeds from note payable, revolver</a></td>
<td class="nump">20,010,064<span></span>
</td>
<td class="nump">16,492,804<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RepaymentsOfNotesPayable', window );">Payments on note payable, revolver</a></td>
<td class="num">$ (19,186,661)<span></span>
</td>
<td class="num">$ (14,428,307)<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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including, but not limited to, disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://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><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 4<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3044-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_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in cash, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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_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_FinanceLeasePrincipalPayments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow for principal payment on finance lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918643-209977<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeasePrincipalPayments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_GainLossOnSaleOfPropertyPlantEquipment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of gain (loss) on sale or disposal of property, plant and equipment assets, including oil and gas property and timber property.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_GainLossOnSaleOfPropertyPlantEquipment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in the amounts payable to vendors for goods and services received and the amount of obligations and expenses incurred but not paid.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccountsReceivable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccountsReceivable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The increase (decrease) during the period in the amount due for taxes based on the reporting entity's earnings or attributable to the entity's income earning process (business presence) within a given jurisdiction.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 230<br> -SubTopic 10<br> -Section 45<br> -Paragraph 28<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126954810&amp;loc=d3e3602-108585<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 amount of obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits.</p></div>
<a href="javascript: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_IncreaseDecreaseInEmployeeRelatedLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncreaseDecreaseInOperatingAssetsAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_IncreaseDecreaseInOperatingAssetsAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInOperatingLiabilitiesAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_IncreaseDecreaseInOperatingLiabilitiesAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 noncurrent operating liabilities classified as 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;">us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_IncreaseDecreaseInOtherOperatingAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase (decrease) in operating assets 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_IncreaseDecreaseInOtherOperatingAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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_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_PaymentsToAcquireIntangibleAssets">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The cash outflow to acquire asset without physical form usually arising from contractual or other legal rights, excluding goodwill.</p></div>
<a href="javascript: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_PaymentsToAcquireIntangibleAssets</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ProceedsFromNotesPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 borrowing supported by a written promise to pay an obligation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 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_ProceedsFromNotesPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_RepaymentsOfNotesPayable">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 a borrowing supported by a written promise to pay an obligation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 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_RepaymentsOfNotesPayable</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_LineOfCreditFacilityAxis=occ_PinnacleFinancialPartnersMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=occ_PinnacleFinancialPartnersMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=occ_VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=occ_VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>18
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140382407129712">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 1 - General<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock', window );">Organization, Consolidation and Presentation of Financial Statements Disclosure [Text Block]</a></td>
<td class="text">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 27pt;">
			<p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b><a href="#" id="notes" title="notes"/>(1)</b></p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>General</b></p>
			</td>
		</tr>

</tbody></table>

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

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 27pt; text-align: justify;">The accompanying unaudited condensed consolidated financial statements of Optical Cable Corporation and its subsidiaries (collectively, the &#8220;Company&#8221; or &#8220;OCC&#174;&#8221;) have been prepared in accordance with U.S. generally accepted accounting principles for interim financial information and the instructions to Form 10&#8209;Q and Regulation S&#8209;X. Accordingly, they do not include all of the information and notes required by U.S. generally accepted accounting principles for complete financial statements. In the opinion of management, all material adjustments considered necessary for a fair presentation have been included. Operating results for the three months ended January 31, 2023 are not necessarily indicative of the results for the fiscal year ending October 31, 2023 because the following items, among other things, may impact those results: changing macroeconomic conditions in various markets, direct and indirect impacts of the COVID-19 pandemic including (but not limited to) supply chain and labor constraints impacting production volumes, increased costs and COVID-19 related government and private industry mandates in the areas of the world in which we operate, changes in market conditions, seasonality, inflation and interest rates, changes in technology, competitive conditions, timing of certain projects and purchases by key customers, significant variations in sales resulting from high volatility and timing of large sales orders among a limited number of customers in certain markets, ability of management to execute its business plans, continued ability to maintain and/or secure future debt and/or equity financing to adequately finance ongoing operations; as well as other variables, uncertainties, contingencies and risks set forth as risks in the Company&#8217;s Annual Report on Form 10&#8209;K for the fiscal year ended October 31, 2022 (including those set forth in the &#8220;Forward-Looking Information&#8221; section), or as otherwise set forth in other filings by the Company as variables, contingencies and/or risks possibly affecting future results. The unaudited condensed consolidated financial statements and condensed notes are presented as permitted by Form 10&#8209;Q and do not contain certain information included in the Company&#8217;s annual consolidated financial statements and notes. For further information, refer to the consolidated financial statements and notes thereto included in the Company&#8217;s Annual Report on Form 10&#8209;K for the fiscal year ended October 31, 2022.</p>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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>19
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140382410364416">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 2 - Stock Incentive Plans and Other Share-based Compensation<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock', window );">Share-Based Payment Arrangement [Text Block]</a></td>
<td class="text">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 27pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>(2)</b></p>
			</td>
			<td style="width: auto;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>Stock Incentive Plans and Other Share</b>&#8209;<b>Based Compensation</b></p>
			</td>
		</tr>

</tbody></table>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">As of January 31, 2023, there were approximately 381,000 remaining shares available for grant under the Optical Cable Corporation Stock Incentive Plan (&#8220;2017 Plan&#8221;).</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">Share-based compensation expense for employees, a consultant and non-employee Directors recognized in the condensed consolidated statements of operations for the three months ended January 31, 2023 and 2022 was $135,041 and $124,439, respectively. Share-based compensation expense is entirely related to expense recognized in connection with the vesting of restricted stock awards or other stock awards.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt 0pt 0pt 27pt;"><i>Stock Compensation</i></p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">The Company has granted, and anticipates granting from time to time, restricted stock awards subject to approval by the Compensation Committee of the Board of Directors. Since fiscal year 2004, the Company has exclusively used restricted stock awards for all share-based compensation of employees and consultants, and restricted stock awards or stock awards to non-employee members of the Board of Directors.</p>

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



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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">Restricted stock award activity during the three months ended January 31, 2023 consisted of restricted shares withheld for taxes in connection with the vesting of restricted shares totaling 24,646 shares. OCC restricted stock grants provide the participant with the option to surrender shares to pay for withholding tax obligations resulting from any vesting restricted shares, or to pay cash to the Company or taxing authorities in the amount of the withholding taxes owed on the value of any vesting restricted shares in order to avoid surrendering shares. The Company accrued $100,719 as of January 31, 2023 related to the surrender of shares by participants to pay for withholding taxes on shares that vested on January 31, 2023.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">As of January 31, 2023, the estimated amount of compensation cost related to unvested equity-based compensation awards in the form of service-based and operational performance-based shares that the Company will recognize over a 2.5 year weighted-average period is approximately $885,000.</p>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/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_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>20
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140382409628208">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 3 - Allowance for Doubtful Accounts for Trade Accounts Receivable<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_occ_AllowanceForDoubtfulAccountsForTradeAccountsReceivableDisclosureTextBlock', window );">Allowance for Doubtful Accounts for Trade Accounts Receivable Disclosure [Text Block]</a></td>
<td class="text">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 27pt;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>(3)</b></p>
			</td>
			<td style="width: auto;">
			<p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"><b>Allowance for Doubtful Accounts for Trade Accounts Receivable</b></p>
			</td>
		</tr>

</tbody></table>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 28pt;">A summary of changes in the allowance for doubtful accounts for trade accounts receivable for the three months ended January 31, 2023 and 2022 follows:</p>

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


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

		<tbody><tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Three Months Ended</b> </b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>January 31,</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2023</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 68%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Balance at beginning of period</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">69,643</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">61,527</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Bad debt expense</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid rgb(0, 0, 0);">(9,787</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid rgb(0, 0, 0);">(4,328</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Balance at end of period</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">59,856</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">57,199</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
		</tr>

</tbody></table>


<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_occ_AllowanceForDoubtfulAccountsForTradeAccountsReceivableDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Allowance for doubtful accounts for trade accounts receivable</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">occ_AllowanceForDoubtfulAccountsForTradeAccountsReceivableDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>occ_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>21
<FILENAME>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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140382409553520">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 4 - Inventories<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryDisclosureTextBlock', window );">Inventory Disclosure [Text Block]</a></td>
<td class="text">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 27pt;">
			<p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>(4)</b></p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>Inventories</b></p>
			</td>
		</tr>

</tbody></table>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">Inventories as of January 31, 2023 and October 31, 2022 consist of the following:</p>

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


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

		<tbody><tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>January 31,</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>October 31,</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>2023</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>2022</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 68%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Finished goods</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">4,614,820</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">3,894,102</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Work in process</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">5,119,033</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">4,054,789</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Raw materials</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">12,157,110</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">11,093,140</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Production supplies</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">370,422</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">396,735</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Total</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">22,261,385</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">19,438,766</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
		</tr>

</tbody></table>


<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for inventory. Includes, but is not limited to, the basis of stating inventory, the method of determining inventory cost, the classes of inventory, and the nature of the cost elements included in inventory.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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>22
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140382560474448">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 5 - Product Warranties<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProductWarrantyDisclosureTextBlock', window );">Product Warranty Disclosure [Text Block]</a></td>
<td class="text">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 27pt;">
			<p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>(5) </b></p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>Product Warranties</b></p>
			</td>
		</tr>

</tbody></table>

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

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 27pt; text-align: justify;">As of January 31, 2023 and October&#160;31, 2022, the Company&#8217;s accrual for estimated product warranty claims totaled $65,000 and $75,000, respectively, and is included in accounts payable and accrued expenses. Warranty claims expense for the three months ended January 31, 2023 and 2022 totaled $16,574 and $7,894, respectively.</p>

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



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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">The following table summarizes the changes in the Company&#8217;s accrual for product warranties during the three months ended January 31, 2023 and 2022:</p>

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


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

		<tbody><tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Three Months Ended</b> </b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>January 31,</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2023</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 68%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Balance at beginning of period</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">75,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">75,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Liabilities accrued for warranties issued during the period</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">55,430</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">55,243</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Warranty claims and costs paid during the period</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">(26,574</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">(7,894</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Changes in liability for pre-existing warranties during the period</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid rgb(0, 0, 0);">(38,856</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid rgb(0, 0, 0);">(47,349</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Balance at end of period</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">65,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">75,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
		</tr>

</tbody></table>


<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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>23
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140382404529952">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 6 - Long-term Debt and Notes Payable<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtTextBlock', window );">Long-Term Debt [Text Block]</a></td>
<td class="text">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 27pt;">
			<p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>(6)</b></p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>Long-term Debt and Notes Payable </b></p>
			</td>
		</tr>

</tbody></table>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 28pt;">The Company has credit facilities consisting of a real estate term loan, as amended and restated (the &#8220;Virginia Real Estate Loan&#8221;), a supplemental real estate term loan, as amended and restated (the &#8220;North Carolina Real Estate Loan&#8221;) and a Revolving Credit Master Promissory Note and related agreements (collectively, the &#8220;Revolver&#8221;).</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">Both the Virginia Real Estate Loan and the North Carolina Real Estate Loan are with Northeast Bank, have a fixed interest rate of 3.95% and are secured by a first lien deed of trust on the Company&#8217;s real property.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;text-indent:27pt;">Long-term debt as of January 31, 2023 and October 31, 2022 consists of the following:</p>

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


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

		<tbody><tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>January 31,</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>October 31,</b></b> </b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>2023</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>2022</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt; text-indent: -9pt;">Virginia Real Estate Loan ($6.5 million original principal) payable in monthly installments of $31,812, including interest (at 3.95%), with final payment of $3,318,029 due May 1, 2024</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">3,610,701</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">3,669,294</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt; text-indent: -9pt;">North Carolina Real Estate Loan ($2.24 million original principal) payable in monthly installments of $10,963, including interest (at 3.95%), with final payment of $711,773 due May 1, 2024</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">835,011</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">859,308</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Total long-term debt</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">4,445,712</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">4,528,602</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Less current installments</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid rgb(0, 0, 0);">341,522</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid rgb(0, 0, 0);">338,094</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Long-term debt, excluding current installments</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">4,104,190</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">4,190,508</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
		</tr>

</tbody></table>


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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">The Revolver with North Mill Capital LLC (now doing business as SLR Business Credit, &#8220;SLR&#8221;) provides the Company with one or more advances in an amount up to: (a) 85% of the aggregate outstanding amount of eligible accounts (the &#8220;eligible accounts loan value&#8221;); plus (b) the lowest of (i) an amount up to 35% of the aggregate value of eligible inventory, (ii) $5,000,000, and (iii) an amount not to exceed 100% of the then outstanding eligible accounts loan value; minus (c) $1,150,000.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">The maximum aggregate principal amount subject to the Revolver is $18,000,000. Interest accrues on the daily balance at the per annum rate of 1.5% above the Prime Rate in effect from time to time, but not less than 4.75% (the &#8220;Applicable Rate&#8221;). In the event of a default, interest may become 6.0% above the Applicable Rate. As of January 31, 2023, the Revolver accrued interest at the prime lending rate plus 1.5% (resulting in a 9.0% rate at January 31, 2023). The termination date of the Revolver is July 24, 2025 and the loan may be extended in <span style="-sec-ix-hidden:c384">one</span> year periods subject to the agreement of SLR.</p>

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



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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">The Revolver is secured by all of the following assets: properties, rights and interests in property of the Company whether now owned or existing, or hereafter acquired or arising, and wherever located; all accounts, equipment, commercial tort claims, general intangibles, chattel paper, inventory, negotiable collateral, investment property, financial assets, letter-of-credit rights, supporting obligations, deposit accounts, money or assets of the Company, which hereafter come into the possession, custody, or control of SLR; all proceeds and products, whether tangible or intangible, of any of the foregoing, including proceeds of insurance covering any or all of the foregoing; any and all tangible or intangible property resulting from the sale, lease, license or other disposition of any of the foregoing, or any portion thereof or interest therein, and all proceeds thereof; and any other assets of the Company which may be subject to a lien in favor of SLR as security for the obligations under the Loan Agreement.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">As of January 31, 2023, the Company had $6.8 million of outstanding borrowings on its Revolver and $4.8 million in available credit. As of October 31, 2022, the Company had $6.0 million of outstanding borrowings on its Revolver and $5.9 million in available credit.</p>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_LongTermDebtTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for long-term debt.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -URI https://asc.fasb.org/topic&amp;trid=2208564<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LongTermDebtTextBlock</td>
</tr>
<tr>
<td style="padding-right: 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>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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140382498282048">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 7 - Leases<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_occ_LesseeOperatingAndFinanceLeasesDisclosureTextBlock', window );">Lessee, Operating and Finance Leases Disclosure [Text Block]</a></td>
<td class="text">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 27pt;">
			<p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>(7)</b></p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>Leases</b></p>
			</td>
		</tr>

</tbody></table>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">The Company has an operating lease agreement for approximately 34,000 square feet of office, manufacturing and warehouse space in Plano, Texas (near Dallas). The lease term expires on November 30, 2024.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">The Company has an operating lease agreement for approximately 36,000 square feet of warehouse space in Roanoke, Virginia. During the first quarter of fiscal year 2023, the lease term was extended for an additional three years. The new expiration date is April 30, 2026.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">The Company also leases certain office equipment under operating leases with initial 60 month terms. The lease terms expire in February and April of 2025.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">OCC leases printers that are used in the Roanoke, Virginia manufacturing facility. The lease term expires on August 22, 2026. The right-of-use asset is being amortized on a straight line basis over seven years. When the lease term ends, the remaining net book value of the right-of-use asset will be classified as property and equipment.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">The Company&#8217;s lease contracts may include options to extend or terminate the leases. The Company exercises judgment to determine the term of those leases when such options are present and include such options in the calculation of the lease term when it is reasonably certain that it will exercise those options.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">The Company includes contract lease components in its determination of lease payments, while non-lease components of the contracts, such as taxes, insurance, and common area maintenance, are expensed as incurred. At commencement, right-of-use assets and lease liabilities are measured at the present value of future lease payments over the lease term. The Company uses its incremental borrowing rate based on information available at the time of lease commencement to measure the present value of future payments.</p>

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



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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">Operating lease expense is recognized on a straight-line basis over the lease term. Short term leases with an initial term of 12 months or less are expensed as incurred. The Company&#8217;s short term leases have month-to-month terms.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">Operating lease right-of-use assets of $867,974 and $662,328 were included in other assets at January 31, 2023 and October 31, 2022, respectively. Operating lease liabilities of $387,013 and $541,904 were included in accounts payable and accrued expenses, and other noncurrent liabilities, respectively, at January 31, 2023. Operating lease liabilities of $355,183 and $374,570 were included in accounts payable and accrued expenses, and other noncurrent liabilities, respectively, at October 31, 2022. Operating lease expense recognized during the three months ended January 31, 2023 and 2022 totaled $103,333.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">The weighted average remaining lease term was 29 months and the weighted average discount rate was 7.0% as of January 31, 2023.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">For the three months ended January 31, 2023 and 2022, cash paid for operating lease liabilities totaled $109,815 and $107,284, respectively. For the three months ended January 31, 2023, right-of-use assets obtained in exchange for new operating lease liabilities totaled $316,028 and there was a reduction in right-of-use assets for modified operating lease liabilities totaling $15,719. For the three months ended January 31, 2022, there were <span style="-sec-ix-hidden:c440">no</span> right-of-use assets obtained in exchange for new operating lease liabilities.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">Financing lease right-of-use assets of $163,465 and $170,839 were included in other assets at January 31, 2023 and October 31, 2022, respectively. Financing lease liabilities of $36,150 and $121,711 were included in accounts payable and accrued expenses, and other noncurrent liabilities, respectively, at January 31, 2023. Financing lease liabilities of $35,724 and $130,911 were included in accounts payable and accrued expenses, and other noncurrent liabilities, respectively, at October 31, 2022. Interest expense related to the financing lease totaled $1,944 and $2,350 for the three month periods ended January 31, 2023 and January 31, 2022, respectively. Amortization expense related to the financing lease totaled $7,374 for the three month periods ended January 31, 2023 and January 31, 2022.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">The remaining lease term for the financing lease is 43 months and the discount rate is 4.75% as of January 31, 2023.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">For the three months ended January 31, 2023, cash paid for the financing lease liability totaled $1,944 for interest and $8,773 for principal. For the three months ended January 31, 2022, cash paid for the financing lease liability totaled $2,350 for interest and $8,366 for principal.</p>

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



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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">The Company&#8217;s future payments due under leases reconciled to the lease liabilities are as follows:</p>

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


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

		<tbody><tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 62%; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"><b><b>Fiscal Year</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b><b>Operating </b></b></b></b></b></p>

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

			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b><b>lease</b></b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">2023&#160;<b style="font-size: 10pt;">(1)</b></p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">329,201</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">32,151</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">2024</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">448,298</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">42,868</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">2025</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">177,997</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">42,868</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">2026</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">63,644</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">55,715</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Total undiscounted lease payments</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">1,019,140</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">173,602</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Present value discount</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(90,223</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(15,740</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Total lease liability</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">928,917</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">157,862</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
		</tr>

</tbody></table>


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

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

		<tbody><tr style="vertical-align: bottom;">
			<td colspan="4" style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"><b><b>(1)</b> Remaining nine months of fiscal year 2023.</b></p>
			</td>
		</tr>

</tbody></table>

<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_occ_LesseeOperatingAndFinanceLeasesDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 and finance leases of lessee. Includes, but is not limited to, description of lessee's operating and finance lease and maturity analysis of operating and finance lease liability.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">occ_LesseeOperatingAndFinanceLeasesDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>occ_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>25
<FILENAME>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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140382407069072">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 8 - Fair Value Measurements<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FairValueDisclosuresTextBlock', window );">Fair Value Disclosures [Text Block]</a></td>
<td class="text">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 27pt;">
			<p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>(8)</b></p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>Fair Value Measurements</b></p>
			</td>
		</tr>

</tbody></table>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">The carrying amounts reported in the condensed consolidated balance sheets as of January 31, 2023 and October 31, 2022 for cash, trade accounts receivable, other receivables, current installments of long-term debt, accounts payable and accrued expenses, and accrued compensation and payroll taxes approximate fair value because of the short maturity of these instruments. The carrying values of the Company&#8217;s note payable, revolver &#8211; noncurrent, and long-term debt, excluding current installments, approximate fair value based on long-term debt issues available to the Company as of January 31, 2023 and October 31, 2022. Fair value is defined as the amount that would be received to sell an asset or paid to transfer a liability in an orderly transaction between market participants at the measurement date.</p>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FairValueDisclosuresTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for the fair value of financial instruments (as defined), including financial assets and financial liabilities (collectively, as defined), and the measurements of those instruments as well as disclosures related to the fair value of non-financial assets and liabilities. Such disclosures about the financial instruments, assets, and liabilities would include: (1) the fair value of the required items together with their carrying amounts (as appropriate); (2) for items for which it is not practicable to estimate fair value, disclosure would include: (a) information pertinent to estimating fair value (including, carrying amount, effective interest rate, and maturity, and (b) the reasons why it is not practicable to estimate fair value; (3) significant concentrations of credit risk including: (a) information about the activity, region, or economic characteristics identifying a concentration, (b) the maximum amount of loss the entity is exposed to based on the gross fair value of the related item, (c) policy for requiring collateral or other security and information as to accessing such collateral or security, and (d) the nature and brief description of such collateral or security; (4) quantitative information about market risks and how such risks are managed; (5) for items measured on both a recurring and nonrecurring basis information regarding the inputs used to develop the fair value measurement; and (6) for items presented in the financial statement for which fair value measurement is elected: (a) information necessary to understand the reasons for the election, (b) discussion of the effect of fair value changes on earnings, (c) a description of [similar groups] items for which the election is made and the relation thereof to the balance sheet, the aggregate carrying value of items included in the balance sheet that are not eligible for the election; (7) all other required (as defined) and desired information.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126976982&amp;loc=d3e19207-110258<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FairValueDisclosuresTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>26
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140382410577568">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 9 - Net Income (Loss) Per Share<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareTextBlock', window );">Earnings Per Share [Text Block]</a></td>
<td class="text">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 27pt;">
			<p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><a href="#" id="notenine" title="notenine"/><b>(9)</b></p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>Net Income (Loss) Per Share</b></p>
			</td>
		</tr>

</tbody></table>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">Basic net income (loss) per share excludes dilution and is computed by dividing net income (loss) available to common shareholders by the weighted-average number of common shares outstanding for the period. Diluted net income (loss) per share reflects the potential dilution that could occur if securities or other contracts to issue common stock were exercised or converted into common stock or resulted in the issuance of common stock that then shared in the net income (loss) of the Company.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">The following is a reconciliation of the numerators and denominators of the net income (loss) per share computations for the periods presented:</p>

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


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

		<tbody><tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Three months ended</b> </b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>January 31,</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2023</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 62%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Net income (loss) (numerator)</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">809,984</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(935,793</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Shares (denominator)</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">7,893,194</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">7,511,190</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Basic and diluted net income (loss) per share</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">0.10</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(0.12</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">)</td>
		</tr>

</tbody></table>


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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">Weighted average unvested shares for the three months ended January 31, 2022 totaling 363,450, while issued and outstanding, were not included in the computation of basic and diluted net loss per share for the three months ended January 31, 2022 (because to include such shares would have been antidilutive, or in other words, to do so would have reduced the net loss per share for that period).</p>

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



<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#160;</p>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_EarningsPerShareTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for earnings per share.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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>27
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140382407261856">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 10 - Segment Information and Business and Credit Concentrations<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ConcentrationRiskDisclosureTextBlock', window );">Concentration Risk Disclosure [Text Block]</a></td>
<td class="text">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 27pt;">
			<p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>(10)</b></p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>Segment Information and Business and Credit Concentrations</b></p>
			</td>
		</tr>

</tbody></table>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">The Company provides credit, in the normal course of business, to various commercial enterprises, governmental entities and not&#8209;for&#8209;profit organizations. Concentration of credit risk with respect to trade receivables is normally limited due to the Company&#8217;s large number of customers. The Company also manages exposure to credit risk through credit approvals, credit limits and monitoring procedures. Management believes that credit risks as of January 31, 2023 have been adequately provided for in the condensed consolidated financial statements. The Company includes all entities under common ownership for the purpose of calculating business concentrations.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">For the three months ended January 31, 2023 and 2022, 14.8% and 17.2%, respectively, of consolidated net sales were attributable to <span style="-sec-ix-hidden:c524"><span style="-sec-ix-hidden:c525">one</span></span> national distributor customer.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">The Company has a single reportable segment for purposes of segment reporting.</p>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for any concentrations existing at the date of the financial statements that make an entity vulnerable to a reasonably possible, near-term, severe impact. This disclosure informs financial statement users about the general nature of the risk associated with the concentration, and may indicate the percentage of concentration risk as of the balance sheet date.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -URI https://asc.fasb.org/topic&amp;trid=2134479<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>28
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140382407347312">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 11 - Revenue Recognition<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerTextBlock', window );">Revenue from Contract with Customer [Text Block]</a></td>
<td class="text">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 27pt;">
			<p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>(11)</b></p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>Revenue Recognition</b></p>
			</td>
		</tr>

</tbody></table>

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

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 27pt; text-align: justify;">Revenues consist of product sales that are recognized at a specific point in time under the core principle of recognizing revenue when control transfers to the customer.&#160;&#160;The Company considers customer purchase orders, governed by master sales agreements or the Company&#8217;s standard terms and conditions, to be the contract with the customer. &#160;For each contract, the promise to transfer the control of the products, each of which is individually distinct, is considered to be the identified performance obligation. The Company evaluates each customer&#8217;s credit risk when determining whether to accept a contract.</p>

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

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 27pt; text-align: justify;">In determining transaction prices, the Company evaluates whether fixed order prices are subject to adjustment to determine the net consideration to which the Company expects to be entitled. Contracts do not include financing components, as payment terms are generally due 30 to 90 days after shipment. Taxes assessed by governmental authorities and collected from the customer including, but not limited to, sales and use taxes and value-added taxes, are not included in the transaction price and are not included in net sales.&#160;</p>

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

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 27pt; text-align: justify;">The Company recognizes revenue at the point in time when products are shipped or delivered from its manufacturing facility to its customer, in accordance with the agreed upon shipping terms.&#160;&#160;Since the Company typically invoices the customer at the same time that performance obligations are satisfied, no contract assets are recognized. The Company&#8217;s contract liability represents advance consideration received from customers prior to transfer of the product.&#160;&#160;This liability was&#160;$59,313 as of January 31, 2023 and $317,310 as of October 31, 2022.</p>

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

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 27pt; text-align: justify;">Sales to certain customers are made pursuant to agreements that provide price adjustments and limited return rights with respect to the Company&#8217;s products.&#160;&#160;The Company maintains a reserve for estimated future price adjustment claims, rebates and returns as a refund liability. The Company&#8217;s refund liability was $257,749 as of January 31, 2023 and&#160;$233,494 as of October 31, 2022.</p>

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

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 27pt; text-align: justify;">The Company offers standard product warranty coverage which provides assurance that its products will conform to contractually agreed-upon specifications for a limited period from the date of shipment. Separately-priced warranty coverage is not offered. The warranty claim is generally limited to a credit equal to the purchase price or a promise to repair or replace the product for a specified period of time at no additional charge.&#160;</p>

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



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

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 27pt; text-align: justify;">The Company accounts for shipping and handling activities related to contracts with customers as a cost to fulfill its promise to transfer control of the related product.&#160;&#160;Shipping and handling costs are included in selling, general and administrative expenses in the accompanying Condensed Consolidated Statements of Operations.</p>

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

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 27pt; text-align: justify;">The Company incurs sales commissions to acquire customer contracts that are directly attributable to the contracts.&#160;&#160;The commissions are expensed as selling expenses during the period that the related products are transferred to customers.</p>

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

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 27pt; text-align: justify;"><i>Disaggregation of Revenue</i></p>

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

<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 27pt; text-align: justify;">The following table presents net sales attributable to the United States and all other countries in total for the three months ended January 31, 2023 and 2022:</p>

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


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

		<tbody><tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b>Three months ended</b></b> </b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b>January 31,</b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>2023</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>2022</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 62%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">United States</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">14,578,085</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">12,144,379</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Outside the United States</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">3,705,590</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">2,295,916</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Total net sales</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">18,283,675</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">14,440,295</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
		</tr>

</tbody></table>


<p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;">&#160;</p>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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>29
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140382407235920">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 12 - Contingencies<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock', window );">Commitments and Contingencies Disclosure [Text Block]</a></td>
<td class="text">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 27pt;">
			<p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>(12)</b></p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>Contingencies</b></p>
			</td>
		</tr>

</tbody></table>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">From time to time, the Company is involved in various claims, legal actions and regulatory reviews arising in the ordinary course of business. In the opinion of management, the ultimate disposition of these matters will not have a material adverse effect on the Company&#8217;s financial position, results of operations or liquidity.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">The Company believes continuing and lingering direct and indirect impacts of the COVID-19 pandemic and certain macroeconomic trends as the COVID-19 pandemic has become more endemic-like in the U.S. have created challenges that have affected production volumes and sales. While improving, the Company has continued to experience certain challenges recruiting additional personnel (particularly, production personnel), as well as certain raw material supply chain challenges, which can impact sales, shipped product volumes, pricing and lead times for certain products. The Company believes it has taken steps to successfully mitigate (to a certain extent) the impacts of these challenges; however, at this time the Company believes these challenges may continue.</p>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;">The extent to which any direct and indirect impacts of the COVID-19 pandemic and certain related macroeconomic trends may continue to affect the Company in the future will depend on ongoing developments, which are highly uncertain and cannot be reasonably predicted, including, but not limited to, the duration and severity of any future outbreaks; the timing and extent of any imposition or easing of restrictions on businesses and individuals in various markets; any impact on product demand in certain of the Company&#8217;s markets; the potential for any resurgence of the virus (including its variant strains); any supply chain and labor constraints impacting production volumes and costs directly or indirectly resulting from the pandemic and after effects of the pandemic; as well as a variety of other unknowable factors.</p>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_CommitmentsAndContingenciesDisclosureTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The entire disclosure for commitments and contingencies.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 440<br> -URI https://asc.fasb.org/topic&amp;trid=2144648<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 954<br> -SubTopic 440<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=6491277&amp;loc=d3e6429-115629<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 450<br> -URI https://asc.fasb.org/topic&amp;trid=2127136<br><br>Reference 4: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 440<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=123406679&amp;loc=d3e25336-109308<br><br>Reference 5: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 440<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123406679&amp;loc=d3e25336-109308<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_CommitmentsAndContingenciesDisclosureTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>30
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140382407261856">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 13 - New Accounting Standards Not Yet Adopted<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DisclosureTextBlockAbstract', window );"><strong>Notes to Financial Statements</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock', window );">Accounting Standards Update and Change in Accounting Principle [Text Block]</a></td>
<td class="text">
<table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;">

		<tbody><tr style="vertical-align: top;">
			<td style="width: 27pt;">
			<p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>(13) </b></p>
			</td>
			<td style="width: auto;">
			<p style="margin: 0pt; text-align: left; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><b>New Accounting Standards Not Yet Adopted</b></p>
			</td>
		</tr>

</tbody></table>

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

<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt 0pt 0pt 28pt;">There are no new accounting standards issued, but not yet adopted by the Company, which are expected to materially impact the Company&#8217;s financial position, operating results or financial statement disclosures.</p>

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

<div>&#160;</div>



<p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left">&#160;</p>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DisclosureTextBlockAbstract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DisclosureTextBlockAbstract</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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>31
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140382407261856">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 3 - Allowance for Doubtful Accounts for Trade Accounts Receivable (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TableTextBlock', window );"><strong>Notes Tables</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_occ_SummaryOfChangesInAllowanceForDoubtfulAccountsForTradeAccountsReceivableTableTextBlock', window );">Summary of Changes in the Allowance for Doubtful Accounts for Trade Accounts Receivable [Table Text Block]</a></td>
<td class="text">
<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; margin-left: 27pt; width: 95%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;">

		<tbody><tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Three Months Ended</b> </b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>January 31,</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2023</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 68%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Balance at beginning of period</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">69,643</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">61,527</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Bad debt expense</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid rgb(0, 0, 0);">(9,787</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid rgb(0, 0, 0);">(4,328</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Balance at end of period</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">59,856</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">57,199</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
		</tr>

</tbody></table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_occ_SummaryOfChangesInAllowanceForDoubtfulAccountsForTradeAccountsReceivableTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Summary Of Changes In The Allowance For Doubtful Accounts For Trade Accounts Receivable [Table 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;">occ_SummaryOfChangesInAllowanceForDoubtfulAccountsForTradeAccountsReceivableTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>occ_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>32
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140382406583728">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 4 - Inventories (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TableTextBlock', window );"><strong>Notes Tables</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfInventoryCurrentTableTextBlock', window );">Schedule of Inventory, Current [Table Text Block]</a></td>
<td class="text">
<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; margin-left: 27pt; width: 95%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;">

		<tbody><tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>January 31,</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>October 31,</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>2023</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>2022</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 68%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Finished goods</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">4,614,820</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">3,894,102</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Work in process</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">5,119,033</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">4,054,789</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Raw materials</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">12,157,110</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">11,093,140</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Production supplies</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">370,422</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">396,735</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;">Total</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">22,261,385</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">19,438,766</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
		</tr>

</tbody></table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfInventoryCurrentTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of the carrying amount as of the balance sheet date of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>33
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140382407347312">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 5 - Product Warranties (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TableTextBlock', window );"><strong>Notes Tables</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock', window );">Schedule of Product Warranty Liability [Table Text Block]</a></td>
<td class="text">
<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; margin-left: 27pt; width: 95%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;">

		<tbody><tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Three Months Ended</b> </b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>January 31,</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2023</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 68%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Balance at beginning of period</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">75,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">75,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Liabilities accrued for warranties issued during the period</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">55,430</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">55,243</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Warranty claims and costs paid during the period</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">(26,574</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">(7,894</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Changes in liability for pre-existing warranties during the period</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid rgb(0, 0, 0);">(38,856</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid rgb(0, 0, 0);">(47,349</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Balance at end of period</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">65,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">75,000</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
		</tr>

</tbody></table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>34
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140382498282048">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 6 - Long-term Debt and Notes Payable (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TableTextBlock', window );"><strong>Notes Tables</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfDebtTableTextBlock', window );">Schedule of Debt [Table Text Block]</a></td>
<td class="text">
<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; margin-left: 27pt; width: 95%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;">

		<tbody><tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>January 31,</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>October 31,</b></b> </b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>2023</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>2022</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt; text-indent: -9pt;">Virginia Real Estate Loan ($6.5 million original principal) payable in monthly installments of $31,812, including interest (at 3.95%), with final payment of $3,318,029 due May 1, 2024</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">3,610,701</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">3,669,294</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt; text-indent: -9pt;">North Carolina Real Estate Loan ($2.24 million original principal) payable in monthly installments of $10,963, including interest (at 3.95%), with final payment of $711,773 due May 1, 2024</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">835,011</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">859,308</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Total long-term debt</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">4,445,712</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;">4,528,602</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Less current installments</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid rgb(0, 0, 0);">341,522</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid rgb(0, 0, 0);">338,094</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;">Long-term debt, excluding current installments</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">4,104,190</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">4,190,508</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
		</tr>

</tbody></table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfDebtTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of information pertaining to short-term and long-debt instruments or arrangements, including but not limited to identification of terms, features, collateral requirements and other information necessary to a fair presentation.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ScheduleOfDebtTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>35
<FILENAME>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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140382407265376">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 7 - Leases (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TableTextBlock', window );"><strong>Notes Tables</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_occ_LesseeLeaseLiabilityMaturityTableTextBlock', window );">Lessee, Lease Liability, Maturity [Table Text Block]</a></td>
<td class="text">
<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; margin-left: 10%; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;">

		<tbody><tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 62%; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"><b><b>Fiscal Year</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b><b>Operating </b></b></b></b></b></p>

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

			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b><b>lease</b></b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">2023&#160;<b style="font-size: 10pt;">(1)</b></p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">329,201</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">32,151</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">2024</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">448,298</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">42,868</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">2025</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">177,997</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">42,868</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">2026</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">63,644</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">55,715</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Total undiscounted lease payments</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">1,019,140</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">173,602</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Present value discount</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(90,223</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(15,740</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Total lease liability</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">928,917</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">157,862</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
		</tr>

</tbody></table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_occ_LesseeLeaseLiabilityMaturityTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 future payments for operating and finance lease obligations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">occ_LesseeLeaseLiabilityMaturityTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>occ_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>36
<FILENAME>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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140382401158224">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 9 - 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>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_TableTextBlock', window );"><strong>Notes Tables</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock', window );">Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]</a></td>
<td class="text">
<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; margin-left: 27pt; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;">

		<tbody><tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Three months ended</b> </b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>January 31,</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2023</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 62%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Net income (loss) (numerator)</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">809,984</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">(935,793</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">)</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Shares (denominator)</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">7,893,194</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">7,511,190</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Basic and diluted net income (loss) per share</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">0.10</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(0.12</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;">)</td>
		</tr>

</tbody></table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -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>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>37
<FILENAME>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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140382407068784">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 11 - Revenue Recognition (Tables)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th"><div>Jan. 31, 2023</div></th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_TableTextBlock', window );"><strong>Notes Tables</strong></a></td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock', window );">Revenue from External Customers by Geographic Areas [Table Text Block]</a></td>
<td class="text">
<table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; margin-left: 27pt; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;">

		<tbody><tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b>Three months ended</b></b> </b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b><b>January 31,</b></b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom;">
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>2023</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
			<td style="font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">
			<p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b><b>2022</b></b></b></p>
			</td>
			<td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt; width: 62%;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">United States</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">14,578,085</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">12,144,379</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;">Outside the United States</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">3,705,590</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">&#160;</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">2,295,916</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">&#160;</td>
		</tr>
		<tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);">
			<td style="font-family: Times New Roman; font-size: 10pt;">
			<p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;">Total net sales</p>
			</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">18,283,675</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">&#160;</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td>
			<td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">14,440,295</td>
			<td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">&#160;</td>
		</tr>

</tbody></table>
<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 revenue from external customers by geographic areas attributed to the entity's country of domicile and to foreign countries from which the entity derives revenue.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 41<br> -Subparagraph a<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9038-108599<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:textBlockItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_TableTextBlock">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- References</a><div><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_TableTextBlock</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:stringItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>38
<FILENAME>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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140382404883952">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 2 - Stock Incentive Plans and Other Share-based Compensation (Details Textual) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockMember', window );">Restricted Stock [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_SharesPaidForTaxWithholdingForShareBasedCompensation', window );">Share-Based Payment Arrangement, Shares Withheld for Tax Withholding Obligation</a></td>
<td class="nump">24,646<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation', window );">Share-Based Payment Arrangement, Decrease for Tax Withholding Obligation</a></td>
<td class="nump">$ 100,719<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1', window );">Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition (Year)</a></td>
<td class="text">2 years 6 months<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized', window );">Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount, Total</a></td>
<td class="nump">$ 885,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PlanNameAxis=occ_Plan2017Member', window );">Plan 2017 [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_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant', window );">Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Available for Grant</a></td>
<td class="nump">381,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_PlanNameAxis=occ_Plan2017Member', window );">Plan 2017 [Member] | Employees, Consultant and Non-employee Directors [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_AllocatedShareBasedCompensationExpense', window );">Share-Based Payment Arrangement, Expense</a></td>
<td class="nump">$ 135,041<span></span>
</td>
<td class="nump">$ 124,439<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_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of decrease to equity for grantee's tax withholding obligation for award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AllocatedShareBasedCompensationExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of expense for award under share-based payment arrangement. Excludes amount capitalized.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 718<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (h)(1)(i)<br> -URI 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_AllocatedShareBasedCompensationExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_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_SharesPaidForTaxWithholdingForShareBasedCompensation">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 used to settle grantee's tax withholding obligation for award under share-based payment arrangement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AwardTypeAxis=us-gaap_RestrictedStockMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AwardTypeAxis=us-gaap_RestrictedStockMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_PlanNameAxis=occ_Plan2017Member">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=occ_Plan2017Member</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_TitleOfIndividualAxis=occ_EmployeesConsultantAndNonemployeeDirectorsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_TitleOfIndividualAxis=occ_EmployeesConsultantAndNonemployeeDirectorsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>39
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140382401098928">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 3 - Allowance for Doubtful Accounts for Trade Accounts Receivable - Summary of Changes in the Allowance for Doubtful Accounts for Trade Accounts Receivable (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent', window );">Balance at beginning of period</a></td>
<td class="nump">$ 69,643<span></span>
</td>
<td class="nump">$ 61,527<span></span>
</td>
</tr>
<tr class="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 );">Bad debt recovery</a></td>
<td class="num">(9,787)<span></span>
</td>
<td class="num">(4,328)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent', window );">Balance at end of period</a></td>
<td class="nump">$ 59,856<span></span>
</td>
<td class="nump">$ 57,199<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of allowance for credit loss on accounts receivable, classified as current.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 310<br> -SubTopic 10<br> -Section 50<br> -Paragraph 4<br> -URI https://asc.fasb.org/extlink&amp;oid=123577603&amp;loc=d3e5074-111524<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 326<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=124255206&amp;loc=SL82895884-210446<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(4))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>40
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140382408323088">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 4 - Inventories - Components of Inventories (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Oct. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryFinishedGoodsNetOfReserves', window );">Finished goods</a></td>
<td class="nump">$ 4,614,820<span></span>
</td>
<td class="nump">$ 3,894,102<span></span>
</td>
</tr>
<tr class="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">5,119,033<span></span>
</td>
<td class="nump">4,054,789<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryRawMaterialsNetOfReserves', window );">Raw materials</a></td>
<td class="nump">12,157,110<span></span>
</td>
<td class="nump">11,093,140<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventorySuppliesNetOfReserves', window );">Production supplies</a></td>
<td class="nump">370,422<span></span>
</td>
<td class="nump">396,735<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_InventoryNet', window );">Total</a></td>
<td class="nump">$ 22,261,385<span></span>
</td>
<td class="nump">$ 19,438,766<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_InventoryFinishedGoodsNetOfReserves">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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_InventorySuppliesNetOfReserves">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</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 products used directly or indirectly in the manufacturing or production process, which may or may not become part of the final product. May also include items used in the storage, presentation or transportation of physical goods.</p></div>
<a href="javascript: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)(5))<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_InventorySuppliesNetOfReserves</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>41
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140382408323200">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 5 - Product Warranties (Details Textual) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
<th class="th"><div>Oct. 31, 2022</div></th>
<th class="th"><div>Oct. 31, 2021</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProductWarrantyAccrual', window );">Standard and Extended Product Warranty Accrual, Ending Balance</a></td>
<td class="nump">$ 65,000<span></span>
</td>
<td class="nump">$ 75,000<span></span>
</td>
<td class="nump">$ 75,000<span></span>
</td>
<td class="nump">$ 75,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProductWarrantyExpense', window );">Product Warranty Expense</a></td>
<td class="nump">16,574<span></span>
</td>
<td class="nump">$ 7,894<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_BalanceSheetLocationAxis=us-gaap_AccountsPayableAndAccruedLiabilitiesMember', window );">Accounts Payable and Accrued Liabilities [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProductWarrantyAccrual', window );">Standard and Extended Product Warranty Accrual, Ending Balance</a></td>
<td class="nump">$ 65,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 75,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_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_us-gaap_BalanceSheetLocationAxis=us-gaap_AccountsPayableAndAccruedLiabilitiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BalanceSheetLocationAxis=us-gaap_AccountsPayableAndAccruedLiabilitiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140382408310144">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 5 - Product Warranties - Changes in Accrual for Product Warranties (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProductWarrantyAccrual', window );">Balance at beginning of period</a></td>
<td class="nump">$ 75,000<span></span>
</td>
<td class="nump">$ 75,000<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProductWarrantyAccrualWarrantiesIssued', window );">Liabilities accrued for warranties issued during the period</a></td>
<td class="nump">55,430<span></span>
</td>
<td class="nump">55,243<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProductWarrantyAccrualPayments', window );">Warranty claims and costs paid during the period</a></td>
<td class="num">(26,574)<span></span>
</td>
<td class="num">(7,894)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ProductWarrantyAccrualPreexistingIncreaseDecrease', window );">Changes in liability for pre-existing warranties during the period</a></td>
<td class="num">(38,856)<span></span>
</td>
<td class="num">(47,349)<span></span>
</td>
</tr>
<tr class="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 );">Balance at end of period</a></td>
<td class="nump">$ 65,000<span></span>
</td>
<td class="nump">$ 75,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_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_ProductWarrantyAccrualPayments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of decrease in the standard and extended product warranty accrual from payments made in cash or in kind to satisfy claims under the terms of the standard and extended product warranty.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 460<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph ((c)(2))<br> -URI https://asc.fasb.org/extlink&amp;oid=126907703&amp;loc=d3e12565-110249<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProductWarrantyAccrualPayments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ProductWarrantyAccrualPreexistingIncreaseDecrease">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 the standard and extended product warranty accrual from changes in estimates attributable to preexisting product warranties.</p></div>
<a href="javascript: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)(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_ProductWarrantyAccrualPreexistingIncreaseDecrease</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_ProductWarrantyAccrualWarrantiesIssued">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of increase in the standard and extended product warranty accrual from warranties issued.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 460<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph ((c)(3))<br> -URI https://asc.fasb.org/extlink&amp;oid=126907703&amp;loc=d3e12565-110249<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ProductWarrantyAccrualWarrantiesIssued</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>43
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140382401200880">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 6 - Long-term Debt and Notes Payable (Details Textual) - USD ($)<br></strong></div></th>
<th class="th" colspan="1"></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th"><div>Jul. 24, 2020</div></th>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Oct. 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_LineOfCreditFacilityAxis=occ_PinnacleFinancialPartnersMember', window );">Pinnacle Financial Partners [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>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCredit', window );">Long-Term Line of Credit, Total</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 6,800,000<span></span>
</td>
<td class="nump">$ 6,000,000.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_LineOfCreditFacilityRemainingBorrowingCapacity', window );">Line of Credit Facility, Remaining Borrowing Capacity</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 4,800,000<span></span>
</td>
<td class="nump">$ 5,900,000<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityAxis=occ_PinnacleFinancialPartnersMember', window );">Pinnacle Financial Partners [Member] | Virginia Real Estate Loan and North Carolina Real Estate Loan [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="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 );">Debt Instrument, Interest Rate, Stated Percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">3.95%<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=occ_NorthMillCapitalLlcMember', window );">North Mill Capital LLC [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>
</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_occ_LineOfCreditFacilityPercentOfEligibleAccounts', window );">Line of Credit Facility, Percent of Eligible Accounts</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">85.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_occ_LineOfCreditFacilityPercentOfEligibleInventory', window );">Line of Credit Facility, Percent of Eligible Inventory</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">35.00%<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_occ_LineOfCreditFacilityAdditionalCapacityForAdvances', window );">Line of Credit Facility, Additional Capacity for Advances</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 5,000,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_occ_LineOfCreditFacilityRestrictedCapacityForAdvances', window );">Line of Credit Facility, Restricted Capacity for Advances</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1,150,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity', window );">Line of Credit Facility, Maximum Borrowing Capacity</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 18,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_DebtInstrumentInterestRateEffectivePercentage', window );">Debt Instrument, Interest Rate, Effective Percentage</a></td>
<td class="nump">4.75%<span></span>
</td>
<td class="nump">9.00%<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_occ_DebtInstrumentTermExtensions', window );">Debt Instrument, Term Extensions (Year)</a></td>
<td class="text">1 year<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=occ_NorthMillCapitalLlcMember', window );">North Mill Capital LLC [Member] | Revolving Credit Facility [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>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentInterestRateEffectivePercentage', window );">Debt Instrument, Interest Rate, Effective Percentage</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">6.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LineOfCreditFacilityAxis=occ_NorthMillCapitalLlcMember', window );">North Mill Capital LLC [Member] | Revolving Credit Facility [Member] | Prime Rate [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentBasisSpreadOnVariableRate1', window );">Debt Instrument, Basis Spread on Variable Rate</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">1.50%<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_occ_DebtInstrumentTermExtensions">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Potential extension to the 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;">occ_DebtInstrumentTermExtensions</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>occ_</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_occ_LineOfCreditFacilityAdditionalCapacityForAdvances">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Additional facility for advances.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">occ_LineOfCreditFacilityAdditionalCapacityForAdvances</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>occ_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_occ_LineOfCreditFacilityPercentOfEligibleAccounts">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percent of aggregate outstanding amount of eligible accounts available for advance.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">occ_LineOfCreditFacilityPercentOfEligibleAccounts</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>occ_</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_occ_LineOfCreditFacilityPercentOfEligibleInventory">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percent of aggregate outstanding amount of eligible inventory available for advance.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">occ_LineOfCreditFacilityPercentOfEligibleInventory</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>occ_</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_occ_LineOfCreditFacilityRestrictedCapacityForAdvances">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Additional limit to facility for advances.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">occ_LineOfCreditFacilityRestrictedCapacityForAdvances</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>occ_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DebtInstrumentBasisSpreadOnVariableRate1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Percentage points added to the reference rate to compute the variable rate on the debt instrument.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentBasisSpreadOnVariableRate1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentInterestRateEffectivePercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Effective interest rate for the funds borrowed under the debt agreement considering interest compounding and original issue discount or premium.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466204&amp;loc=SL6036836-161870<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 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://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 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.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_DebtInstrumentInterestRateEffectivePercentage</td>
</tr>
<tr>
<td style="padding-right: 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_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_LineOfCredit">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>The carrying value as of the balance sheet date of the current and noncurrent portions of long-term obligations drawn from a line of credit, which is a bank's commitment to make loans up to a specific amount. Examples of items that might be included in the application of this element may consist of letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to a maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line. Includes short-term obligations that would normally be classified as current liabilities but for which (a) postbalance sheet date issuance of a long term obligation to refinance the short term obligation on a long term basis, or (b) the enterprise has entered into a financing agreement that clearly permits the enterprise to refinance the short-term obligation on a long term basis and the following conditions are met (1) the agreement does not expire within 1 year and is not cancelable by the lender except for violation of an objectively determinable provision, (2) no violation exists at the BS date, and (3) the lender has entered into the financing agreement is expected to be financially capable of honoring the agreement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02(22))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.9-03(16))<br> -URI https://asc.fasb.org/extlink&amp;oid=126897435&amp;loc=d3e534808-122878<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 944<br> -SubTopic 210<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.7-03(16))<br> -URI https://asc.fasb.org/extlink&amp;oid=126734703&amp;loc=d3e572229-122910<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LineOfCredit</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_LineOfCreditFacilityAxis=occ_PinnacleFinancialPartnersMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=occ_PinnacleFinancialPartnersMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_LongtermDebtTypeAxis=occ_VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=occ_VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=occ_NorthMillCapitalLlcMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=occ_NorthMillCapitalLlcMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_VariableRateAxis=us-gaap_PrimeRateMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_VariableRateAxis=us-gaap_PrimeRateMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>44
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140382408323056">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 6 - Long-term Debt and Notes Payable - Long-term Debt (Details) - USD ($)<br></strong></div></th>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Oct. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebt', window );">Long-term debt</a></td>
<td class="nump">$ 4,445,712<span></span>
</td>
<td class="nump">$ 4,528,602<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtCurrent', window );">Less current installments</a></td>
<td class="nump">341,522<span></span>
</td>
<td class="nump">338,094<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LongTermDebtNoncurrent', window );">Long-term debt, excluding current installments</a></td>
<td class="nump">4,104,190<span></span>
</td>
<td class="nump">4,190,508<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=occ_VirginiaRealEstateLoanMember', window );">Virginia Real Estate Loan [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_LongTermDebt', window );">Long-term debt</a></td>
<td class="nump">3,610,701<span></span>
</td>
<td class="nump">3,669,294<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=occ_NorthCarolinaRealEstateLoanMember', window );">North Carolina Real Estate Loan [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_LongTermDebt', window );">Long-term debt</a></td>
<td class="nump">$ 835,011<span></span>
</td>
<td class="nump">$ 859,308<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_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=occ_VirginiaRealEstateLoanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=occ_VirginiaRealEstateLoanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=occ_NorthCarolinaRealEstateLoanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=occ_NorthCarolinaRealEstateLoanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>45
<FILENAME>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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140382404905792">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 6 - Long-term Debt and Notes Payable - Long-term Debt (Details) (Parentheticals) - USD ($)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Oct. 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_LongtermDebtTypeAxis=occ_VirginiaRealEstateLoanMember', window );">Virginia Real Estate Loan [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_DebtInstrumentFaceAmount', window );">Debt Instrument, Face Amount</a></td>
<td class="nump">$ 6,500,000<span></span>
</td>
<td class="nump">$ 6,500,000<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentPeriodicPayment', window );">Debt Instrument, Periodic Payment, Total</a></td>
<td class="nump">$ 31,812<span></span>
</td>
<td class="nump">$ 31,812<span></span>
</td>
</tr>
<tr class="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 );">Debt Instrument, Interest Rate, Stated Percentage</a></td>
<td class="nump">3.95%<span></span>
</td>
<td class="nump">3.95%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid', window );">Debt Instrument, Periodic Payment Terms, Balloon Payment to be Paid</a></td>
<td class="nump">$ 3,318,029<span></span>
</td>
<td class="nump">$ 3,318,029<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentMaturityDate', window );">Debt Instrument, Maturity Date</a></td>
<td class="text">May  01,  2024<span></span>
</td>
<td class="text">May  01,  2024<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=occ_NorthCarolinaRealEstateLoanMember', window );">North Carolina Real Estate Loan [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_DebtInstrumentFaceAmount', window );">Debt Instrument, Face Amount</a></td>
<td class="nump">$ 2,240,000<span></span>
</td>
<td class="nump">$ 2,240,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_DebtInstrumentPeriodicPayment', window );">Debt Instrument, Periodic Payment, Total</a></td>
<td class="nump">$ 10,963<span></span>
</td>
<td class="nump">$ 10,963<span></span>
</td>
</tr>
<tr class="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 );">Debt Instrument, Interest Rate, Stated Percentage</a></td>
<td class="nump">3.95%<span></span>
</td>
<td class="nump">3.95%<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid', window );">Debt Instrument, Periodic Payment Terms, Balloon Payment to be Paid</a></td>
<td class="nump">$ 711,773<span></span>
</td>
<td class="nump">$ 711,773<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_DebtInstrumentMaturityDate', window );">Debt Instrument, Maturity Date</a></td>
<td class="text">May  01,  2024<span></span>
</td>
<td class="text">May  01,  2024<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_DebtInstrumentInterestRateStatedPercentage">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Contractual interest rate for funds borrowed, under the debt agreement.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495323-112611<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22(a)(1))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentInterestRateStatedPercentage</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentMaturityDate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Date when the debt instrument is scheduled to be fully repaid, in YYYY-MM-DD format.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22(a)(2))<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://www.xbrl.org/2003/role/exampleRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 470<br> -SubTopic 20<br> -Section 50<br> -Paragraph 1B<br> -Subparagraph (d)<br> -URI https://asc.fasb.org/extlink&amp;oid=123466505&amp;loc=SL123495323-112611<br><br>Reference 3: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 820<br> -SubTopic 10<br> -Section 50<br> -Paragraph 2<br> -Subparagraph (bbb)(2)<br> -URI https://asc.fasb.org/extlink&amp;oid=126976982&amp;loc=d3e19207-110258<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentMaturityDate</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:dateItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_DebtInstrumentPeriodicPayment">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of the required periodic payments including both interest and principal payments.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 210<br> -SubTopic 10<br> -Section S99<br> -Paragraph 1<br> -Subparagraph (SX 210.5-02.22)<br> -URI https://asc.fasb.org/extlink&amp;oid=120391452&amp;loc=d3e13212-122682<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 942<br> -SubTopic 470<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=123599511&amp;loc=d3e64711-112823<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentPeriodicPayment</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 payment greater than the preceding installment payments to be paid at final maturity date of debt.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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=occ_VirginiaRealEstateLoanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=occ_VirginiaRealEstateLoanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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=occ_NorthCarolinaRealEstateLoanMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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=occ_NorthCarolinaRealEstateLoanMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140382401218144">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 7 - Leases (Details Textual)<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="1"></th>
</tr>
<tr>
<th class="th">
<div>Jan. 31, 2023 </div>
<div>USD ($) </div>
<div>ft&#178;</div>
</th>
<th class="th">
<div>Jan. 31, 2022 </div>
<div>USD ($)</div>
</th>
<th class="th">
<div>Oct. 31, 2022 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseExpense', window );">Operating Lease, Expense</a></td>
<td class="nump">$ 103,333<span></span>
</td>
<td class="nump">$ 103,333<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1', window );">Operating Lease, Weighted Average Remaining Lease Term (Month)</a></td>
<td class="text">29 months<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_OperatingLeaseWeightedAverageDiscountRatePercent', window );">Operating Lease, Weighted Average Discount Rate, Percent</a></td>
<td class="nump">7.00%<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeasePayments', window );">Operating Lease, Payments</a></td>
<td class="nump">$ 109,815<span></span>
</td>
<td class="nump">107,284<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability', window );">Right-of-Use Asset Obtained in Exchange for Operating Lease Liability</a></td>
<td class="nump">316,028<span></span>
</td>
<td class="nump">0<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_occ_OperatingLeaseRightofUseAssetReduction', window );">Operating Lease, Right-of-Use Asset, Reduction</a></td>
<td class="nump">15,719<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_FinanceLeaseInterestExpense', window );">Finance Lease, Interest Expense</a></td>
<td class="nump">1,944<span></span>
</td>
<td class="nump">2,350<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseRightOfUseAssetAmortization', window );">Finance Lease, Right-of-Use Asset, Amortization</a></td>
<td class="nump">$ 7,374<span></span>
</td>
<td class="nump">7,374<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeFinanceLeaseRemainingLeaseTerm', window );">Lessee, Finance Lease, Remaining Lease Term (Month)</a></td>
<td class="text">43 months<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeFinanceLeaseDiscountRate', window );">Lessee, Finance Lease, Discount Rate</a></td>
<td class="nump">4.75%<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_FinanceLeasePrincipalPayments', window );">Finance Lease, Principal Payments</a></td>
<td class="nump">$ 8,773<span></span>
</td>
<td class="nump">$ 8,366<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BalanceSheetLocationAxis=us-gaap_OtherAssetsMember', window );">Other Assets [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseRightOfUseAsset', window );">Operating Lease, Right-of-Use Asset</a></td>
<td class="nump">867,974<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 662,328<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseRightOfUseAsset', window );">Finance Lease, Right-of-Use Asset, after Accumulated Amortization, Total</a></td>
<td class="nump">163,465<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">170,839<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BalanceSheetLocationAxis=us-gaap_AccountsPayableAndAccruedLiabilitiesMember', window );">Accounts Payable and Accrued Liabilities [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_OperatingLeaseLiabilityCurrent', window );">Operating Lease, Liability, Current</a></td>
<td class="nump">387,013<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">355,183<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BalanceSheetLocationAxis=us-gaap_OtherNoncurrentLiabilitiesMember', window );">Other Noncurrent Liabilities [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_OperatingLeaseLiabilityNoncurrent', window );">Operating Lease, Liability, Noncurrent</a></td>
<td class="nump">541,904<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">374,570<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityNoncurrent', window );">Finance Lease, Liability, Noncurrent</a></td>
<td class="nump">121,711<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">130,911<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_BalanceSheetLocationAxis=occ_AccountsPayableAndAccruedLiabilitiesCurrentMember', window );">Accounts Payable and Accrued Liabilities, Current [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_FinanceLeaseLiabilityCurrent', window );">Finance Lease, Liability, Current</a></td>
<td class="nump">$ 36,150<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 35,724<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_LeaseContractualTermAxis=occ_OperatingLeaseForOfficeManufacturingAndWarehouseSpaceInPlanoTexasMember', window );">Operating Lease for Office, Manufacturing and Warehouse Space in Plano, Texas [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_AreaOfRealEstateProperty', window );">Area of Real Estate Property (Square Foot) | ft&#178;</a></td>
<td class="nump">34,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LeaseContractualTermAxis=occ_OperatingLeaseForWarehouseSpaceInRoanokeVirginiaMember', window );">Operating Lease for Warehouse Space in Roanoke, Virginia [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_AreaOfRealEstateProperty', window );">Area of Real Estate Property (Square Foot) | ft&#178;</a></td>
<td class="nump">36,000<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LeaseContractualTermAxis=occ_OperatingLeaseForOfficeEquipmentMember', window );">Operating Lease For Office Equipment [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_LesseeOperatingLeaseTermOfContract', window );">Lessee, Operating Lease, Term of Contract (Month)</a></td>
<td class="text">60 months<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_occ_OperatingLeaseRightofUseAssetReduction">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 reduction in right of use assets of operating lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">occ_OperatingLeaseRightofUseAssetReduction</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>occ_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_AreaOfRealEstateProperty">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Area of a real estate property.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AreaOfRealEstateProperty</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:areaItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseInterestExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 interest expense on finance lease liability.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918638-209977<br><br>Reference 3: 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_FinanceLeaseInterestExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FinanceLeaseLiabilityCurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from finance lease, 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_FinanceLeaseLiabilityCurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FinanceLeaseLiabilityNoncurrent">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from finance lease, 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_FinanceLeaseLiabilityNoncurrent</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FinanceLeasePrincipalPayments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow for principal payment on finance lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918643-209977<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_FinanceLeasePrincipalPayments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FinanceLeaseRightOfUseAsset">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, after accumulated amortization, of right-of-use asset from finance lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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_FinanceLeaseRightOfUseAsset</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FinanceLeaseRightOfUseAssetAmortization">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 right-of-use asset from finance lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918638-209977<br><br>Reference 3: 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_FinanceLeaseRightOfUseAssetAmortization</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_LesseeFinanceLeaseDiscountRate">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Discount rate used by lessee to determine present value of finance lease payments.</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 3<br> -Subparagraph (c)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918673-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_LesseeFinanceLeaseDiscountRate</td>
</tr>
<tr>
<td style="padding-right: 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_LesseeFinanceLeaseRemainingLeaseTerm">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Remaining lease term of finance 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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918673-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_LesseeFinanceLeaseRemainingLeaseTerm</td>
</tr>
<tr>
<td style="padding-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_LesseeOperatingLeaseTermOfContract">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Term of lessee's 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/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 3<br> -Subparagraph (a)(3)<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918673-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_LesseeOperatingLeaseTermOfContract</td>
</tr>
<tr>
<td style="padding-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_OperatingLeaseExpense">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of operating lease expense. Excludes sublease income.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 4<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918638-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseExpense</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>debit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_OperatingLeasePayments">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of cash outflow from operating lease, excluding payments to bring another asset to condition and location necessary for its intended use.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 5<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918643-209977<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 4<br> -Subparagraph (g)(1)<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918686-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeasePayments</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<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_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_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 right-of-use asset obtained in exchange for 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/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)(2)<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_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_BalanceSheetLocationAxis=us-gaap_OtherAssetsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BalanceSheetLocationAxis=us-gaap_OtherAssetsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BalanceSheetLocationAxis=us-gaap_AccountsPayableAndAccruedLiabilitiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BalanceSheetLocationAxis=us-gaap_AccountsPayableAndAccruedLiabilitiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BalanceSheetLocationAxis=us-gaap_OtherNoncurrentLiabilitiesMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BalanceSheetLocationAxis=us-gaap_OtherNoncurrentLiabilitiesMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_BalanceSheetLocationAxis=occ_AccountsPayableAndAccruedLiabilitiesCurrentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_BalanceSheetLocationAxis=occ_AccountsPayableAndAccruedLiabilitiesCurrentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_LeaseContractualTermAxis=occ_OperatingLeaseForOfficeManufacturingAndWarehouseSpaceInPlanoTexasMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_LeaseContractualTermAxis=occ_OperatingLeaseForOfficeManufacturingAndWarehouseSpaceInPlanoTexasMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_LeaseContractualTermAxis=occ_OperatingLeaseForWarehouseSpaceInRoanokeVirginiaMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_LeaseContractualTermAxis=occ_OperatingLeaseForWarehouseSpaceInRoanokeVirginiaMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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_LeaseContractualTermAxis=occ_OperatingLeaseForOfficeEquipmentMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" 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_LeaseContractualTermAxis=occ_OperatingLeaseForOfficeEquipmentMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140382404932464">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 7 - Leases - Future Payments Due (Details)<br></strong></div></th>
<th class="th">
<div>Jan. 31, 2023 </div>
<div>USD ($)</div>
</th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths', window );">2023, operating lease</a></td>
<td class="nump">$ 329,201<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths', window );">2023, finance lease</a></td>
<td class="nump">32,151<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo', window );">2024, operating lease</a></td>
<td class="nump">448,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_FinanceLeaseLiabilityPaymentsDueYearTwo', window );">2024, finance lease</a></td>
<td class="nump">42,868<span></span>
</td>
</tr>
<tr class="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 );">2025, operating lease</a></td>
<td class="nump">177,997<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree', window );">2025, finance lease</a></td>
<td class="nump">42,868<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour', window );">2026, operating lease</a></td>
<td class="nump">63,644<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour', window );">2026, finance lease</a></td>
<td class="nump">55,715<span></span>
</td>
</tr>
<tr class="reu">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue', window );">Total undiscounted lease payments, operating lease</a></td>
<td class="nump">1,019,140<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_FinanceLeaseLiabilityPaymentsDue', window );">Total undiscounted lease payments, finance lease</a></td>
<td class="nump">173,602<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount', window );">Present value discount, operating lease</a></td>
<td class="num">(90,223)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount', window );">Present value discount, finance lease</a></td>
<td class="num">(15,740)<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_OperatingLeaseLiability', window );">Total lease liability, operating lease</a></td>
<td class="nump">928,917<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_FinanceLeaseLiability', window );">Total lease liability, finance lease</a></td>
<td class="nump">$ 157,862<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from finance lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI 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_FinanceLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_FinanceLeaseLiabilityPaymentsDue">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 for finance lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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_FinanceLeaseLiabilityPaymentsDue</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 finance 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_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FinanceLeaseLiabilityPaymentsDueYearFour">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 finance 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_FinanceLeaseLiabilityPaymentsDueYearFour</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FinanceLeaseLiabilityPaymentsDueYearThree">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 finance 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_FinanceLeaseLiabilityPaymentsDueYearThree</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FinanceLeaseLiabilityPaymentsDueYearTwo">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 finance 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_FinanceLeaseLiabilityPaymentsDueYearTwo</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_FinanceLeaseLiabilityUndiscountedExcessAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 finance lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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_FinanceLeaseLiabilityUndiscountedExcessAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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_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_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 50<br> -Paragraph 6<br> -URI https://asc.fasb.org/extlink&amp;oid=128292326&amp;loc=SL77918701-209980<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_OperatingLeaseLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Present value of lessee's discounted obligation for lease payments from operating lease.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 842<br> -SubTopic 20<br> -Section 45<br> -Paragraph 1<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=123391704&amp;loc=SL77918627-209977<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_OperatingLeaseLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
</div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>48
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140382407214016">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 9 - Net Income (Loss) Per Share (Details Textual)<br></strong></div></th>
<th class="th" colspan="1">3 Months Ended</th>
</tr>
<tr><th class="th">
<div>Jan. 31, 2022 </div>
<div>shares</div>
</th></tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount', window );">Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount</a></td>
<td class="nump">363,450<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_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 260<br> -SubTopic 10<br> -Section 50<br> -Paragraph 1<br> -Subparagraph (c)<br> -URI https://asc.fasb.org/extlink&amp;oid=124432515&amp;loc=d3e3550-109257<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:sharesItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table></div>
</body>
</html>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>49
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140382401161984">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 9 - Net Income (Loss) Per Share - Components of Reconciliation of Numerators and Denominators Net Loss Per Share (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_NetIncomeLoss', window );">Net income (loss)</a></td>
<td class="nump">$ 809,984<span></span>
</td>
<td class="num">$ (935,793)<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_WeightedAverageNumberOfSharesOutstandingBasic', window );">Shares (denominator) (in shares)</a></td>
<td class="nump">7,893,194<span></span>
</td>
<td class="nump">7,511,190<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_EarningsPerShareBasic', window );">Net income (loss) per share: Basic and diluted (in dollars per share)</a></td>
<td class="nump">$ 0.10<span></span>
</td>
<td class="num">$ (0.12)<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_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_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_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>50
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140382404512672">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 10 - Segment Information and Business and Credit Concentrations (Details Textual) - Revenue Benchmark [Member] - Customer Concentration Risk [Member]<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl custom" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_occ_ConcentrationRiskNumberOfCustomers', window );">Concentration Risk, Number of Customers</a></td>
<td class="nump">1<span></span>
</td>
<td class="nump">1<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_SalesRevenueNetMember', window );">Customer One [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_ConcentrationRiskPercentage1', window );">Concentration Risk, Percentage</a></td>
<td class="nump">14.80%<span></span>
</td>
<td class="nump">17.20%<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_occ_ConcentrationRiskNumberOfCustomers">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Number of customers for a concentration risk benchmark.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>No definition available.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">occ_ConcentrationRiskNumberOfCustomers</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>occ_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:integerItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskPercentage1">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>For an entity that discloses a concentration risk in relation to quantitative amount, which serves as the "benchmark" (or denominator) in the equation, this concept represents the concentration percentage derived from the division.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 42<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e9054-108599<br><br>Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 18<br> -URI https://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6351-108592<br><br>Reference 3: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -URI https://asc.fasb.org/extlink&amp;oid=123594938&amp;loc=d3e13531-108611<br><br>Reference 4: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 825<br> -SubTopic 10<br> -Section 50<br> -Paragraph 21<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=123594938&amp;loc=d3e13537-108611<br><br>Reference 5: http://fasb.org/us-gaap/role/ref/legacyRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 275<br> -SubTopic 10<br> -Section 50<br> -Paragraph 20<br> -URI https://asc.fasb.org/extlink&amp;oid=99393423&amp;loc=d3e6404-108592<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskPercentage1</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>dtr-types:percentItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByBenchmarkAxis=us-gaap_SalesRevenueNetMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ConcentrationRiskByTypeAxis=us-gaap_CustomerConcentrationRiskMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_MajorCustomersAxis=occ_CustomerOneMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_MajorCustomersAxis=occ_CustomerOneMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140382409628336">
<tr>
<th class="tl" colspan="1" rowspan="1"><div style="width: 200px;"><strong>Note 11 - Revenue Recognition (Details Textual) - USD ($)<br></strong></div></th>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Oct. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerLiability', window );">Contract with Customer, Liability, Total</a></td>
<td class="nump">$ 59,313<span></span>
</td>
<td class="nump">$ 317,310<span></span>
</td>
</tr>
<tr class="ro">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_ContractWithCustomerRefundLiability', window );">Contract with Customer, Refund Liability, Total</a></td>
<td class="nump">$ 257,749<span></span>
</td>
<td class="nump">$ 233,494<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 45<br> -Paragraph 1<br> -URI https://asc.fasb.org/extlink&amp;oid=126919976&amp;loc=SL49130531-203044<br><br>Reference 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 8<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130549-203045<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 45<br> -Paragraph 2<br> -URI https://asc.fasb.org/extlink&amp;oid=126919976&amp;loc=SL49130532-203044<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>instant</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_ContractWithCustomerRefundLiability">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></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 liability for consideration received or receivable from customer which is not included in transaction price, when consideration is expected to be refunded to customer.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 55<br> -Paragraph 27<br> -URI https://asc.fasb.org/extlink&amp;oid=126920602&amp;loc=SL49130611-203046-203046<br></p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ Details</a><div style="display: none;"><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">us-gaap_ContractWithCustomerRefundLiability</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<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>52
<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.22.4</span><table class="report" border="0" cellspacing="2" id="idm140382406696592">
<tr>
<th class="tl" colspan="1" rowspan="2"><div style="width: 200px;"><strong>Note 11 - Revenue Recognition - Revenue Attributed to United States and All Other Countries (Details) - USD ($)<br></strong></div></th>
<th class="th" colspan="2">3 Months Ended</th>
<th class="th" colspan="1">12 Months Ended</th>
</tr>
<tr>
<th class="th"><div>Jan. 31, 2023</div></th>
<th class="th"><div>Jan. 31, 2022</div></th>
<th class="th"><div>Oct. 31, 2022</div></th>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Net sales</a></td>
<td class="nump">$ 18,283,675<span></span>
</td>
<td class="nump">$ 14,440,295<span></span>
</td>
<td class="nump">$ 14,440,295<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=country_US', window );">UNITED STATES</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Net sales</a></td>
<td class="nump">14,578,085<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">12,144,379<span></span>
</td>
</tr>
<tr class="rh">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_srt_StatementGeographicalAxis=us-gaap_NonUsMember', window );">Non-US [Member]</a></td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
</tr>
<tr class="re">
<td class="pl" style="border-bottom: 0px;" valign="top"><a class="a" href="javascript:void(0);" onclick="Show.showAR( this, 'defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax', window );">Net sales</a></td>
<td class="nump">$ 3,705,590<span></span>
</td>
<td class="text">&#160;<span></span>
</td>
<td class="nump">$ 2,295,916<span></span>
</td>
</tr>
</table>
<div style="display: none;">
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Definition</a><div><p>Amount, including tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value-added and excise.</p></div>
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">+ References</a><div style="display: none;"><p>Reference 1: http://www.xbrl.org/2003/role/disclosureRef<br> -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 2: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 606<br> -SubTopic 10<br> -Section 50<br> -Paragraph 5<br> -URI https://asc.fasb.org/extlink&amp;oid=126920106&amp;loc=SL49130545-203045<br><br>Reference 3: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 32<br> -Subparagraph (b)<br> -URI 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 (a)<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 30<br> -Subparagraph (a)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8906-108599<br><br>Reference 6: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (b)<br> -URI https://asc.fasb.org/extlink&amp;oid=126901519&amp;loc=d3e8736-108599<br><br>Reference 7: http://www.xbrl.org/2003/role/disclosureRef<br> -Publisher FASB<br> -Name Accounting Standards Codification<br> -Topic 280<br> -SubTopic 10<br> -Section 50<br> -Paragraph 22<br> -Subparagraph (a)<br> -URI 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 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 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 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 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_RevenueFromContractWithCustomerIncludingAssessedTax</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td>us-gaap_</td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>xbrli:monetaryItemType</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td>credit</td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td>duration</td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=country_US">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=country_US</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><strong> Balance Type:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Period Type:</strong></td>
<td></td>
</tr>
</table></div>
</div></td></tr>
</table>
<table border="0" cellpadding="0" cellspacing="0" class="authRefData" style="display: none;" id="defref_srt_StatementGeographicalAxis=us-gaap_NonUsMember">
<tr><td class="hide"><a style="color: white;" href="javascript:void(0);" onclick="Show.hideAR();">X</a></td></tr>
<tr><td><div class="body" style="padding: 2px;">
<a href="javascript:void(0);" onclick="Show.toggleNext( this );">- Details</a><div><table border="0" cellpadding="0" cellspacing="0">
<tr>
<td><strong> Name:</strong></td>
<td style="white-space:nowrap;">srt_StatementGeographicalAxis=us-gaap_NonUsMember</td>
</tr>
<tr>
<td style="padding-right: 4px;white-space:nowrap;"><strong> Namespace Prefix:</strong></td>
<td></td>
</tr>
<tr>
<td><strong> Data Type:</strong></td>
<td>na</td>
</tr>
<tr>
<td><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>occ20230131_10q_htm.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version="1.0" encoding="utf-8"?>
<xbrl
  xmlns="http://www.xbrl.org/2003/instance"
  xmlns: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:occ="http://http/20230131"
  xmlns:srt="http://fasb.org/srt/2022"
  xmlns:thunderdome="http://www.RDGFilings.com"
  xmlns:us-gaap="http://fasb.org/us-gaap/2022"
  xmlns:utr="http://www.xbrl.org/2009/utr"
  xmlns:xbrldi="http://xbrl.org/2006/xbrldi"
  xmlns:xlink="http://www.w3.org/1999/xlink"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <link:schemaRef xlink:href="occ-20230131.xsd" xlink:type="simple"/>
    <context id="d_2022-11-01_2023-01-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="d_2021-11-01_2022-10-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-10-31</endDate>
        </period>
    </context>
    <context id="d_2021-11-01_2022-10-31_StatementGeographicalAxis-NonUsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-10-31</endDate>
        </period>
    </context>
    <context id="d_2022-11-01_2023-01-31_StatementGeographicalAxis-NonUsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">us-gaap:NonUsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="d_2021-11-01_2022-10-31_StatementGeographicalAxis-US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-10-31</endDate>
        </period>
    </context>
    <context id="d_2022-11-01_2023-01-31_StatementGeographicalAxis-US">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:StatementGeographicalAxis">country:US</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="i_2022-10-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
        </entity>
        <period>
            <instant>2022-10-31</instant>
        </period>
    </context>
    <context id="i_2023-01-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="d_2022-11-01_2023-01-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="d_2021-11-01_2022-01-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="d_2021-11-01_2022-01-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-CustomerOneMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">occ:CustomerOneMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="d_2022-11-01_2023-01-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-CustomerOneMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:MajorCustomersAxis">occ:CustomerOneMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByBenchmarkAxis">us-gaap:SalesRevenueNetMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:ConcentrationRiskByTypeAxis">us-gaap:CustomerConcentrationRiskMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="d_2021-11-01_2022-01-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="i_2022-10-31_BalanceSheetLocationAxis-OtherNoncurrentLiabilitiesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherNoncurrentLiabilitiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-10-31</instant>
        </period>
    </context>
    <context id="i_2022-10-31_BalanceSheetLocationAxis-AccountsPayableAndAccruedLiabilitiesCurrentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">occ:AccountsPayableAndAccruedLiabilitiesCurrentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-10-31</instant>
        </period>
    </context>
    <context id="i_2023-01-31_BalanceSheetLocationAxis-OtherNoncurrentLiabilitiesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherNoncurrentLiabilitiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="i_2023-01-31_BalanceSheetLocationAxis-AccountsPayableAndAccruedLiabilitiesCurrentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">occ:AccountsPayableAndAccruedLiabilitiesCurrentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="i_2022-10-31_BalanceSheetLocationAxis-OtherAssetsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-10-31</instant>
        </period>
    </context>
    <context id="i_2023-01-31_BalanceSheetLocationAxis-OtherAssetsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:OtherAssetsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="i_2022-10-31_BalanceSheetLocationAxis-AccountsPayableAndAccruedLiabilitiesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:AccountsPayableAndAccruedLiabilitiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-10-31</instant>
        </period>
    </context>
    <context id="i_2023-01-31_BalanceSheetLocationAxis-AccountsPayableAndAccruedLiabilitiesMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:BalanceSheetLocationAxis">us-gaap:AccountsPayableAndAccruedLiabilitiesMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="i_2023-01-31_LeaseContractualTermAxis-OperatingLeaseForOfficeEquipmentMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LeaseContractualTermAxis">occ:OperatingLeaseForOfficeEquipmentMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="i_2023-01-31_LeaseContractualTermAxis-OperatingLeaseForWarehouseSpaceInRoanokeVirginiaMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LeaseContractualTermAxis">occ:OperatingLeaseForWarehouseSpaceInRoanokeVirginiaMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="i_2023-01-31_LeaseContractualTermAxis-OperatingLeaseForOfficeManufacturingAndWarehouseSpaceInPlanoTexasMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LeaseContractualTermAxis">occ:OperatingLeaseForOfficeManufacturingAndWarehouseSpaceInPlanoTexasMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="i_2022-10-31_CreditFacilityAxis-RevolvingCreditFacilityMember_LineOfCreditFacilityAxis-PinnacleFinancialPartnersMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">occ:PinnacleFinancialPartnersMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-10-31</instant>
        </period>
    </context>
    <context id="i_2023-01-31_CreditFacilityAxis-RevolvingCreditFacilityMember_LineOfCreditFacilityAxis-PinnacleFinancialPartnersMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">occ:PinnacleFinancialPartnersMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="d_2020-07-24_2020-07-24_CreditFacilityAxis-RevolvingCreditFacilityMember_LineOfCreditFacilityAxis-NorthMillCapitalLlcMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">occ:NorthMillCapitalLlcMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2020-07-24</startDate>
            <endDate>2020-07-24</endDate>
        </period>
    </context>
    <context id="i_2023-01-31_CreditFacilityAxis-RevolvingCreditFacilityMember_LineOfCreditFacilityAxis-NorthMillCapitalLlcMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">occ:NorthMillCapitalLlcMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="d_2022-11-01_2023-01-31_CreditFacilityAxis-RevolvingCreditFacilityMember_LineOfCreditFacilityAxis-NorthMillCapitalLlcMember_VariableRateAxis-PrimeRateMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">occ:NorthMillCapitalLlcMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:VariableRateAxis">us-gaap:PrimeRateMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="i_2023-01-31_CreditFacilityAxis-RevolvingCreditFacilityMember_LineOfCreditFacilityAxis-NorthMillCapitalLlcMember_RangeAxis-MaximumMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:RangeAxis">srt:MaximumMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">occ:NorthMillCapitalLlcMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="i_2020-07-24_CreditFacilityAxis-RevolvingCreditFacilityMember_LineOfCreditFacilityAxis-NorthMillCapitalLlcMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:CreditFacilityAxis">us-gaap:RevolvingCreditFacilityMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">occ:NorthMillCapitalLlcMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2020-07-24</instant>
        </period>
    </context>
    <context id="i_2022-10-31_LongtermDebtTypeAxis-NorthCarolinaRealEstateLoanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">occ:NorthCarolinaRealEstateLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-10-31</instant>
        </period>
    </context>
    <context id="i_2023-01-31_LongtermDebtTypeAxis-NorthCarolinaRealEstateLoanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">occ:NorthCarolinaRealEstateLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="d_2021-11-01_2022-10-31_LongtermDebtTypeAxis-NorthCarolinaRealEstateLoanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">occ:NorthCarolinaRealEstateLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-10-31</endDate>
        </period>
    </context>
    <context id="d_2022-11-01_2023-01-31_LongtermDebtTypeAxis-NorthCarolinaRealEstateLoanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">occ:NorthCarolinaRealEstateLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="i_2022-10-31_LongtermDebtTypeAxis-VirginiaRealEstateLoanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">occ:VirginiaRealEstateLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-10-31</instant>
        </period>
    </context>
    <context id="i_2023-01-31_LongtermDebtTypeAxis-VirginiaRealEstateLoanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">occ:VirginiaRealEstateLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="d_2021-11-01_2022-10-31_LongtermDebtTypeAxis-VirginiaRealEstateLoanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">occ:VirginiaRealEstateLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-10-31</endDate>
        </period>
    </context>
    <context id="d_2022-11-01_2023-01-31_LongtermDebtTypeAxis-VirginiaRealEstateLoanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">occ:VirginiaRealEstateLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="i_2023-01-31_LineOfCreditFacilityAxis-PinnacleFinancialPartnersMember_LongtermDebtTypeAxis-VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">occ:PinnacleFinancialPartnersMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">occ:VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="i_2022-01-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
        </entity>
        <period>
            <instant>2022-01-31</instant>
        </period>
    </context>
    <context id="i_2021-10-31">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
        </entity>
        <period>
            <instant>2021-10-31</instant>
        </period>
    </context>
    <context id="i_2023-01-31_AwardTypeAxis-RestrictedStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="d_2022-11-01_2023-01-31_AwardTypeAxis-RestrictedStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:AwardTypeAxis">us-gaap:RestrictedStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="d_2021-11-01_2022-01-31_PlanNameAxis-Plan2017Member_TitleOfIndividualAxis-EmployeesConsultantAndNonemployeeDirectorsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">occ:EmployeesConsultantAndNonemployeeDirectorsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">occ:Plan2017Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="d_2022-11-01_2023-01-31_PlanNameAxis-Plan2017Member_TitleOfIndividualAxis-EmployeesConsultantAndNonemployeeDirectorsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="srt:TitleOfIndividualAxis">occ:EmployeesConsultantAndNonemployeeDirectorsMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">occ:Plan2017Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="i_2023-01-31_PlanNameAxis-Plan2017Member">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:PlanNameAxis">occ:Plan2017Member</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2023-01-31</instant>
        </period>
    </context>
    <context id="d_2021-11-01_2022-01-31_LineOfCreditFacilityAxis-PinnacleFinancialPartnersMember_LongtermDebtTypeAxis-VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">occ:PinnacleFinancialPartnersMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">occ:VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="d_2022-11-01_2023-01-31_LineOfCreditFacilityAxis-PinnacleFinancialPartnersMember_LongtermDebtTypeAxis-VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:LineOfCreditFacilityAxis">occ:PinnacleFinancialPartnersMember</xbrldi:explicitMember>
                <xbrldi:explicitMember dimension="us-gaap:LongtermDebtTypeAxis">occ:VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="i_2022-01-31_StatementEquityComponentsAxis-RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</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="i_2022-01-31_StatementEquityComponentsAxis-CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</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="d_2021-11-01_2022-01-31_StatementEquityComponentsAxis-RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="d_2021-11-01_2022-01-31_StatementEquityComponentsAxis-CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2021-11-01</startDate>
            <endDate>2022-01-31</endDate>
        </period>
    </context>
    <context id="i_2021-10-31_StatementEquityComponentsAxis-RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-10-31</instant>
        </period>
    </context>
    <context id="i_2021-10-31_StatementEquityComponentsAxis-CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2021-10-31</instant>
        </period>
    </context>
    <context id="i_2023-01-31_StatementEquityComponentsAxis-RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</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="i_2023-01-31_StatementEquityComponentsAxis-CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</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="d_2022-11-01_2023-01-31_StatementEquityComponentsAxis-RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="d_2022-11-01_2023-01-31_StatementEquityComponentsAxis-CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <startDate>2022-11-01</startDate>
            <endDate>2023-01-31</endDate>
        </period>
    </context>
    <context id="i_2022-10-31_StatementEquityComponentsAxis-RetainedEarningsMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:RetainedEarningsMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-10-31</instant>
        </period>
    </context>
    <context id="i_2022-10-31_StatementEquityComponentsAxis-CommonStockMember">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
            <segment>
                <xbrldi:explicitMember dimension="us-gaap:StatementEquityComponentsAxis">us-gaap:CommonStockMember</xbrldi:explicitMember>
            </segment>
        </entity>
        <period>
            <instant>2022-10-31</instant>
        </period>
    </context>
    <context id="i_2023-03-08">
        <entity>
            <identifier scheme="http://www.sec.gov/CIK">0001000230</identifier>
        </entity>
        <period>
            <instant>2023-03-08</instant>
        </period>
    </context>
    <unit id="USD">
        <measure>iso4217:USD</measure>
    </unit>
    <unit id="Pure">
        <measure>pure</measure>
    </unit>
    <unit id="Share">
        <measure>shares</measure>
    </unit>
    <unit id="USDPerShare">
        <divide>
            <unitNumerator>
                <measure>iso4217:USD</measure>
            </unitNumerator>
            <unitDenominator>
                <measure>shares</measure>
            </unitDenominator>
        </divide>
    </unit>
    <unit id="Month">
        <measure>utr:M</measure>
    </unit>
    <unit id="SquareFoot">
        <measure>utr:sqft</measure>
    </unit>
    <unit id="Year">
        <measure>utr:Y</measure>
    </unit>
    <unit id="NonApplicable">
        <measure>thunderdome:item</measure>
    </unit>
    <dei:EntityCentralIndexKey contextRef="d_2022-11-01_2023-01-31">0001000230</dei:EntityCentralIndexKey>
    <dei:AmendmentFlag contextRef="d_2022-11-01_2023-01-31">false</dei:AmendmentFlag>
    <dei:CurrentFiscalYearEndDate contextRef="d_2022-11-01_2023-01-31">--10-31</dei:CurrentFiscalYearEndDate>
    <dei:DocumentFiscalYearFocus contextRef="d_2022-11-01_2023-01-31">2023</dei:DocumentFiscalYearFocus>
    <dei:DocumentFiscalPeriodFocus contextRef="d_2022-11-01_2023-01-31">Q1</dei:DocumentFiscalPeriodFocus>
    <occ:ConcentrationRiskNumberOfCustomers
      contextRef="d_2022-11-01_2023-01-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember"
      decimals="INF"
      id="c525"
      unitRef="Pure">1</occ:ConcentrationRiskNumberOfCustomers>
    <occ:ConcentrationRiskNumberOfCustomers
      contextRef="d_2021-11-01_2022-01-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember"
      decimals="INF"
      id="c524"
      unitRef="Pure">1</occ:ConcentrationRiskNumberOfCustomers>
    <us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
      contextRef="d_2021-11-01_2022-01-31"
      decimals="-3"
      id="c440"
      unitRef="USD">0</us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability>
    <occ:DebtInstrumentTermExtensions
      contextRef="d_2020-07-24_2020-07-24_CreditFacilityAxis-RevolvingCreditFacilityMember_LineOfCreditFacilityAxis-NorthMillCapitalLlcMember"
      id="c384">P1Y</occ:DebtInstrumentTermExtensions>
    <us-gaap:PreferredStockSharesOutstanding
      contextRef="i_2022-10-31"
      decimals="-3"
      id="c82"
      unitRef="Share">0</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:PreferredStockSharesOutstanding
      contextRef="i_2023-01-31"
      decimals="-3"
      id="c81"
      unitRef="Share">0</us-gaap:PreferredStockSharesOutstanding>
    <us-gaap:PreferredStockSharesIssued
      contextRef="i_2022-10-31"
      decimals="-3"
      id="c80"
      unitRef="Share">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockSharesIssued
      contextRef="i_2023-01-31"
      decimals="-3"
      id="c79"
      unitRef="Share">0</us-gaap:PreferredStockSharesIssued>
    <us-gaap:PreferredStockNoParValue
      contextRef="i_2022-10-31"
      decimals="-3"
      id="c76"
      unitRef="USDPerShare">0</us-gaap:PreferredStockNoParValue>
    <us-gaap:PreferredStockNoParValue
      contextRef="i_2023-01-31"
      decimals="-3"
      id="c75"
      unitRef="USDPerShare">0</us-gaap:PreferredStockNoParValue>
    <dei:DocumentType contextRef="d_2022-11-01_2023-01-31" id="c2">10-Q</dei:DocumentType>
    <dei:DocumentQuarterlyReport contextRef="d_2022-11-01_2023-01-31" id="c3">true</dei:DocumentQuarterlyReport>
    <dei:DocumentPeriodEndDate contextRef="d_2022-11-01_2023-01-31" id="c4">2023-01-31</dei:DocumentPeriodEndDate>
    <dei:DocumentTransitionReport contextRef="d_2022-11-01_2023-01-31" id="c5">false</dei:DocumentTransitionReport>
    <dei:EntityFileNumber contextRef="d_2022-11-01_2023-01-31" id="c6">0-27022</dei:EntityFileNumber>
    <dei:EntityRegistrantName contextRef="d_2022-11-01_2023-01-31" id="c7">OPTICAL CABLE CORPORATION</dei:EntityRegistrantName>
    <dei:EntityIncorporationStateCountryCode contextRef="d_2022-11-01_2023-01-31" id="c8">VA</dei:EntityIncorporationStateCountryCode>
    <dei:EntityTaxIdentificationNumber contextRef="d_2022-11-01_2023-01-31" id="c9">54-1237042</dei:EntityTaxIdentificationNumber>
    <dei:EntityAddressAddressLine1 contextRef="d_2022-11-01_2023-01-31" id="c10">5290 Concourse Drive</dei:EntityAddressAddressLine1>
    <dei:EntityAddressCityOrTown contextRef="d_2022-11-01_2023-01-31" id="c11">Roanoke</dei:EntityAddressCityOrTown>
    <dei:EntityAddressStateOrProvince contextRef="d_2022-11-01_2023-01-31" id="c12">VA</dei:EntityAddressStateOrProvince>
    <dei:EntityAddressPostalZipCode contextRef="d_2022-11-01_2023-01-31" id="c13">24019</dei:EntityAddressPostalZipCode>
    <dei:CityAreaCode contextRef="d_2022-11-01_2023-01-31" id="c14">540</dei:CityAreaCode>
    <dei:LocalPhoneNumber contextRef="d_2022-11-01_2023-01-31" id="c15">265&#x2011;0690</dei:LocalPhoneNumber>
    <dei:Security12bTitle contextRef="d_2022-11-01_2023-01-31" id="c16">Common Stock, no par value</dei:Security12bTitle>
    <dei:TradingSymbol contextRef="d_2022-11-01_2023-01-31" id="c17">OCC</dei:TradingSymbol>
    <dei:SecurityExchangeName contextRef="d_2022-11-01_2023-01-31" id="c18">NASDAQ</dei:SecurityExchangeName>
    <dei:EntityCurrentReportingStatus contextRef="d_2022-11-01_2023-01-31" id="c19">Yes</dei:EntityCurrentReportingStatus>
    <dei:EntityInteractiveDataCurrent contextRef="d_2022-11-01_2023-01-31" id="c20">Yes</dei:EntityInteractiveDataCurrent>
    <dei:EntityFilerCategory contextRef="d_2022-11-01_2023-01-31" id="c21">Non-accelerated Filer</dei:EntityFilerCategory>
    <dei:EntitySmallBusiness contextRef="d_2022-11-01_2023-01-31" id="c22">true</dei:EntitySmallBusiness>
    <dei:EntityEmergingGrowthCompany contextRef="d_2022-11-01_2023-01-31" id="c23">false</dei:EntityEmergingGrowthCompany>
    <dei:EntityShellCompany contextRef="d_2022-11-01_2023-01-31" id="c24">false</dei:EntityShellCompany>
    <dei:EntityCommonStockSharesOutstanding
      contextRef="i_2023-03-08"
      decimals="INF"
      id="c25"
      unitRef="Share">7868568</dei:EntityCommonStockSharesOutstanding>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i_2023-01-31"
      decimals="0"
      id="c32"
      unitRef="USD">186081</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:CashAndCashEquivalentsAtCarryingValue
      contextRef="i_2022-10-31"
      decimals="0"
      id="c33"
      unitRef="USD">215936</us-gaap:CashAndCashEquivalentsAtCarryingValue>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="i_2023-01-31"
      decimals="0"
      id="c34"
      unitRef="USD">59856</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="i_2022-10-31"
      decimals="0"
      id="c35"
      unitRef="USD">69643</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="i_2023-01-31"
      decimals="0"
      id="c36"
      unitRef="USD">9910936</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:AccountsReceivableNetCurrent
      contextRef="i_2022-10-31"
      decimals="0"
      id="c37"
      unitRef="USD">10963753</us-gaap:AccountsReceivableNetCurrent>
    <us-gaap:OtherReceivables
      contextRef="i_2023-01-31"
      decimals="0"
      id="c38"
      unitRef="USD">140945</us-gaap:OtherReceivables>
    <us-gaap:OtherReceivables
      contextRef="i_2022-10-31"
      decimals="0"
      id="c39"
      unitRef="USD">37442</us-gaap:OtherReceivables>
    <us-gaap:InventoryNet
      contextRef="i_2023-01-31"
      decimals="0"
      id="c40"
      unitRef="USD">22261385</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="i_2022-10-31"
      decimals="0"
      id="c41"
      unitRef="USD">19438766</us-gaap:InventoryNet>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent
      contextRef="i_2023-01-31"
      decimals="0"
      id="c42"
      unitRef="USD">609848</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:PrepaidExpenseAndOtherAssetsCurrent
      contextRef="i_2022-10-31"
      decimals="0"
      id="c43"
      unitRef="USD">540225</us-gaap:PrepaidExpenseAndOtherAssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="i_2023-01-31"
      decimals="0"
      id="c44"
      unitRef="USD">33109195</us-gaap:AssetsCurrent>
    <us-gaap:AssetsCurrent
      contextRef="i_2022-10-31"
      decimals="0"
      id="c45"
      unitRef="USD">31196122</us-gaap:AssetsCurrent>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="i_2023-01-31"
      decimals="0"
      id="c46"
      unitRef="USD">7302218</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:PropertyPlantAndEquipmentNet
      contextRef="i_2022-10-31"
      decimals="0"
      id="c47"
      unitRef="USD">7390285</us-gaap:PropertyPlantAndEquipmentNet>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="i_2023-01-31"
      decimals="0"
      id="c48"
      unitRef="USD">606716</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:IntangibleAssetsNetExcludingGoodwill
      contextRef="i_2022-10-31"
      decimals="0"
      id="c49"
      unitRef="USD">618142</us-gaap:IntangibleAssetsNetExcludingGoodwill>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="i_2023-01-31"
      decimals="0"
      id="c50"
      unitRef="USD">1483221</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:OtherAssetsNoncurrent
      contextRef="i_2022-10-31"
      decimals="0"
      id="c51"
      unitRef="USD">1353257</us-gaap:OtherAssetsNoncurrent>
    <us-gaap:Assets
      contextRef="i_2023-01-31"
      decimals="0"
      id="c52"
      unitRef="USD">42501350</us-gaap:Assets>
    <us-gaap:Assets
      contextRef="i_2022-10-31"
      decimals="0"
      id="c53"
      unitRef="USD">40557806</us-gaap:Assets>
    <us-gaap:LoansPayableCurrent
      contextRef="i_2023-01-31"
      decimals="0"
      id="c56"
      unitRef="USD">341522</us-gaap:LoansPayableCurrent>
    <us-gaap:LoansPayableCurrent
      contextRef="i_2022-10-31"
      decimals="0"
      id="c57"
      unitRef="USD">338094</us-gaap:LoansPayableCurrent>
    <us-gaap:AccountsPayableAndAccruedLiabilitiesCurrent
      contextRef="i_2023-01-31"
      decimals="0"
      id="c58"
      unitRef="USD">5558085</us-gaap:AccountsPayableAndAccruedLiabilitiesCurrent>
    <us-gaap:AccountsPayableAndAccruedLiabilitiesCurrent
      contextRef="i_2022-10-31"
      decimals="0"
      id="c59"
      unitRef="USD">5354150</us-gaap:AccountsPayableAndAccruedLiabilitiesCurrent>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="i_2023-01-31"
      decimals="0"
      id="c60"
      unitRef="USD">1763863</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:EmployeeRelatedLiabilitiesCurrent
      contextRef="i_2022-10-31"
      decimals="0"
      id="c61"
      unitRef="USD">1772551</us-gaap:EmployeeRelatedLiabilitiesCurrent>
    <us-gaap:TaxesPayableCurrent
      contextRef="i_2023-01-31"
      decimals="0"
      id="c62"
      unitRef="USD">50379</us-gaap:TaxesPayableCurrent>
    <us-gaap:TaxesPayableCurrent
      contextRef="i_2022-10-31"
      decimals="0"
      id="c63"
      unitRef="USD">18098</us-gaap:TaxesPayableCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="i_2023-01-31"
      decimals="0"
      id="c64"
      unitRef="USD">7713849</us-gaap:LiabilitiesCurrent>
    <us-gaap:LiabilitiesCurrent
      contextRef="i_2022-10-31"
      decimals="0"
      id="c65"
      unitRef="USD">7482893</us-gaap:LiabilitiesCurrent>
    <us-gaap:LongTermLineOfCredit
      contextRef="i_2023-01-31"
      decimals="0"
      id="c66"
      unitRef="USD">6823065</us-gaap:LongTermLineOfCredit>
    <us-gaap:LongTermLineOfCredit
      contextRef="i_2022-10-31"
      decimals="0"
      id="c67"
      unitRef="USD">5999663</us-gaap:LongTermLineOfCredit>
    <us-gaap:LongTermLoansPayable
      contextRef="i_2023-01-31"
      decimals="0"
      id="c68"
      unitRef="USD">4104190</us-gaap:LongTermLoansPayable>
    <us-gaap:LongTermLoansPayable
      contextRef="i_2022-10-31"
      decimals="0"
      id="c69"
      unitRef="USD">4190508</us-gaap:LongTermLoansPayable>
    <us-gaap:OtherLiabilitiesNoncurrent
      contextRef="i_2023-01-31"
      decimals="0"
      id="c70"
      unitRef="USD">856222</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:OtherLiabilitiesNoncurrent
      contextRef="i_2022-10-31"
      decimals="0"
      id="c71"
      unitRef="USD">725024</us-gaap:OtherLiabilitiesNoncurrent>
    <us-gaap:Liabilities
      contextRef="i_2023-01-31"
      decimals="0"
      id="c72"
      unitRef="USD">19497326</us-gaap:Liabilities>
    <us-gaap:Liabilities
      contextRef="i_2022-10-31"
      decimals="0"
      id="c73"
      unitRef="USD">18398088</us-gaap:Liabilities>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="i_2023-01-31"
      decimals="INF"
      id="c77"
      unitRef="Share">1000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockSharesAuthorized
      contextRef="i_2022-10-31"
      decimals="INF"
      id="c78"
      unitRef="Share">1000000</us-gaap:PreferredStockSharesAuthorized>
    <us-gaap:PreferredStockValue
      contextRef="i_2023-01-31"
      decimals="-3"
      id="c83"
      unitRef="USD">0</us-gaap:PreferredStockValue>
    <us-gaap:PreferredStockValue
      contextRef="i_2022-10-31"
      decimals="-3"
      id="c84"
      unitRef="USD">0</us-gaap:PreferredStockValue>
    <us-gaap:CommonStockNoParValue
      contextRef="i_2022-10-31"
      decimals="-3"
      id="c85"
      unitRef="USDPerShare">0</us-gaap:CommonStockNoParValue>
    <us-gaap:CommonStockNoParValue
      contextRef="i_2023-01-31"
      decimals="-3"
      id="c86"
      unitRef="USDPerShare">0</us-gaap:CommonStockNoParValue>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="i_2022-10-31"
      decimals="INF"
      id="c87"
      unitRef="Share">50000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesAuthorized
      contextRef="i_2023-01-31"
      decimals="INF"
      id="c88"
      unitRef="Share">50000000</us-gaap:CommonStockSharesAuthorized>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i_2023-01-31"
      decimals="INF"
      id="c89"
      unitRef="Share">7868568</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockSharesIssued
      contextRef="i_2023-01-31"
      decimals="INF"
      id="c90"
      unitRef="Share">7868568</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesIssued
      contextRef="i_2022-10-31"
      decimals="INF"
      id="c91"
      unitRef="Share">7893194</us-gaap:CommonStockSharesIssued>
    <us-gaap:CommonStockSharesOutstanding
      contextRef="i_2022-10-31"
      decimals="INF"
      id="c92"
      unitRef="Share">7893194</us-gaap:CommonStockSharesOutstanding>
    <us-gaap:CommonStockValue
      contextRef="i_2023-01-31"
      decimals="0"
      id="c93"
      unitRef="USD">14672827</us-gaap:CommonStockValue>
    <us-gaap:CommonStockValue
      contextRef="i_2022-10-31"
      decimals="0"
      id="c94"
      unitRef="USD">14638505</us-gaap:CommonStockValue>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="i_2023-01-31"
      decimals="0"
      id="c95"
      unitRef="USD">8331197</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:RetainedEarningsAccumulatedDeficit
      contextRef="i_2022-10-31"
      decimals="0"
      id="c96"
      unitRef="USD">7521213</us-gaap:RetainedEarningsAccumulatedDeficit>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2023-01-31"
      decimals="0"
      id="c97"
      unitRef="USD">23004024</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest
      contextRef="i_2022-10-31"
      decimals="0"
      id="c98"
      unitRef="USD">22159718</us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest>
    <us-gaap:CommitmentsAndContingencies
      contextRef="i_2023-01-31"
      id="c100"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:CommitmentsAndContingencies
      contextRef="i_2023-01-31"
      id="c101"
      unitRef="USD"
      xsi:nil="true"/>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="i_2023-01-31"
      decimals="0"
      id="c102"
      unitRef="USD">42501350</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:LiabilitiesAndStockholdersEquity
      contextRef="i_2022-10-31"
      decimals="0"
      id="c103"
      unitRef="USD">40557806</us-gaap:LiabilitiesAndStockholdersEquity>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c106"
      unitRef="USD">18283675</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c107"
      unitRef="USD">14440295</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c108"
      unitRef="USD">11762466</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:CostOfGoodsAndServicesSold
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c109"
      unitRef="USD">10394443</us-gaap:CostOfGoodsAndServicesSold>
    <us-gaap:GrossProfit
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c110"
      unitRef="USD">6521209</us-gaap:GrossProfit>
    <us-gaap:GrossProfit
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c111"
      unitRef="USD">4045852</us-gaap:GrossProfit>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c112"
      unitRef="USD">5455466</us-gaap:SellingGeneralAndAdministrativeExpense>
    <us-gaap:SellingGeneralAndAdministrativeExpense
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c113"
      unitRef="USD">4780199</us-gaap:SellingGeneralAndAdministrativeExpense>
    <occ:RoyaltyRevenueExpense
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c114"
      unitRef="USD">-6586</occ:RoyaltyRevenueExpense>
    <occ:RoyaltyRevenueExpense
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c115"
      unitRef="USD">-6958</occ:RoyaltyRevenueExpense>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c116"
      unitRef="USD">13221</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:AmortizationOfIntangibleAssets
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c117"
      unitRef="USD">12095</us-gaap:AmortizationOfIntangibleAssets>
    <us-gaap:OperatingIncomeLoss
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c118"
      unitRef="USD">1045936</us-gaap:OperatingIncomeLoss>
    <us-gaap:OperatingIncomeLoss
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c119"
      unitRef="USD">-753400</us-gaap:OperatingIncomeLoss>
    <us-gaap:InterestExpense
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c121"
      unitRef="USD">270623</us-gaap:InterestExpense>
    <us-gaap:InterestExpense
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c122"
      unitRef="USD">158260</us-gaap:InterestExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c123"
      unitRef="USD">67135</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:OtherNonoperatingIncomeExpense
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c124"
      unitRef="USD">-11385</us-gaap:OtherNonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c125"
      unitRef="USD">-203488</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:NonoperatingIncomeExpense
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c126"
      unitRef="USD">-169645</us-gaap:NonoperatingIncomeExpense>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c127"
      unitRef="USD">842448</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c128"
      unitRef="USD">-923045</us-gaap:IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c129"
      unitRef="USD">32464</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:IncomeTaxExpenseBenefit
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c130"
      unitRef="USD">12748</us-gaap:IncomeTaxExpenseBenefit>
    <us-gaap:NetIncomeLoss
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c131"
      unitRef="USD">809984</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c132"
      unitRef="USD">-935793</us-gaap:NetIncomeLoss>
    <us-gaap:EarningsPerShareBasic
      contextRef="d_2022-11-01_2023-01-31"
      decimals="INF"
      id="c133"
      unitRef="USDPerShare">0.10</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="d_2021-11-01_2022-01-31"
      decimals="INF"
      id="c134"
      unitRef="USDPerShare">-0.12</us-gaap:EarningsPerShareBasic>
    <us-gaap:SharesOutstanding
      contextRef="i_2022-10-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c137"
      unitRef="Share">7893194</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i_2022-10-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="0"
      id="c138"
      unitRef="USD">14638505</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2022-10-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="0"
      id="c139"
      unitRef="USD">7521213</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2022-10-31"
      decimals="0"
      id="c140"
      unitRef="USD">22159718</us-gaap:StockholdersEquity>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation
      contextRef="d_2022-11-01_2023-01-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c141"
      unitRef="Share">24626</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="d_2022-11-01_2023-01-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="0"
      id="c142"
      unitRef="USD">34322</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="d_2022-11-01_2023-01-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="-3"
      id="c143"
      unitRef="USD">0</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c144"
      unitRef="USD">34322</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:NetIncomeLoss
      contextRef="d_2022-11-01_2023-01-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="-3"
      id="c146"
      unitRef="USD">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2022-11-01_2023-01-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="0"
      id="c147"
      unitRef="USD">809984</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c148"
      unitRef="USD">809984</us-gaap:NetIncomeLoss>
    <us-gaap:SharesOutstanding
      contextRef="i_2023-01-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c149"
      unitRef="Share">7868568</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i_2023-01-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="0"
      id="c150"
      unitRef="USD">14672827</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2023-01-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="0"
      id="c151"
      unitRef="USD">8331197</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2023-01-31"
      decimals="0"
      id="c152"
      unitRef="USD">23004024</us-gaap:StockholdersEquity>
    <us-gaap:SharesOutstanding
      contextRef="i_2021-10-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c155"
      unitRef="Share">7897477</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i_2021-10-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="0"
      id="c156"
      unitRef="USD">14337649</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2021-10-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="0"
      id="c157"
      unitRef="USD">7868304</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2021-10-31"
      decimals="0"
      id="c158"
      unitRef="USD">22205953</us-gaap:StockholdersEquity>
    <us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation
      contextRef="d_2021-11-01_2022-01-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c159"
      unitRef="Share">47479</us-gaap:StockIssuedDuringPeriodSharesShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="d_2021-11-01_2022-01-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="0"
      id="c160"
      unitRef="USD">19803</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="d_2021-11-01_2022-01-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="-3"
      id="c161"
      unitRef="USD">0</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c162"
      unitRef="USD">19803</us-gaap:StockIssuedDuringPeriodValueShareBasedCompensation>
    <us-gaap:NetIncomeLoss
      contextRef="d_2021-11-01_2022-01-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="-3"
      id="c164"
      unitRef="USD">0</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2021-11-01_2022-01-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="0"
      id="c165"
      unitRef="USD">-935793</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c166"
      unitRef="USD">-935793</us-gaap:NetIncomeLoss>
    <us-gaap:SharesOutstanding
      contextRef="i_2022-01-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="INF"
      id="c167"
      unitRef="Share">7849998</us-gaap:SharesOutstanding>
    <us-gaap:StockholdersEquity
      contextRef="i_2022-01-31_StatementEquityComponentsAxis-CommonStockMember"
      decimals="0"
      id="c168"
      unitRef="USD">14357452</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2022-01-31_StatementEquityComponentsAxis-RetainedEarningsMember"
      decimals="0"
      id="c169"
      unitRef="USD">6932511</us-gaap:StockholdersEquity>
    <us-gaap:StockholdersEquity
      contextRef="i_2022-01-31"
      decimals="0"
      id="c170"
      unitRef="USD">21289963</us-gaap:StockholdersEquity>
    <us-gaap:NetIncomeLoss
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c174"
      unitRef="USD">809984</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c175"
      unitRef="USD">-935793</us-gaap:NetIncomeLoss>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c177"
      unitRef="USD">248196</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:DepreciationDepletionAndAmortization
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c178"
      unitRef="USD">285954</us-gaap:DepreciationDepletionAndAmortization>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c179"
      unitRef="USD">-9787</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c180"
      unitRef="USD">-4328</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:ShareBasedCompensation
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c181"
      unitRef="USD">135041</us-gaap:ShareBasedCompensation>
    <us-gaap:ShareBasedCompensation
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c182"
      unitRef="USD">124439</us-gaap:ShareBasedCompensation>
    <us-gaap:GainLossOnSaleOfPropertyPlantEquipment
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c183"
      unitRef="USD">-10065</us-gaap:GainLossOnSaleOfPropertyPlantEquipment>
    <us-gaap:GainLossOnSaleOfPropertyPlantEquipment
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c184"
      unitRef="USD">-12008</us-gaap:GainLossOnSaleOfPropertyPlantEquipment>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c186"
      unitRef="USD">-1062604</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInAccountsReceivable
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c187"
      unitRef="USD">11897</us-gaap:IncreaseDecreaseInAccountsReceivable>
    <us-gaap:IncreaseDecreaseInOtherReceivables
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c188"
      unitRef="USD">103503</us-gaap:IncreaseDecreaseInOtherReceivables>
    <us-gaap:IncreaseDecreaseInOtherReceivables
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c189"
      unitRef="USD">-20708</us-gaap:IncreaseDecreaseInOtherReceivables>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c190"
      unitRef="USD">2822619</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInInventories
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c191"
      unitRef="USD">1603095</us-gaap:IncreaseDecreaseInInventories>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c192"
      unitRef="USD">69623</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c193"
      unitRef="USD">-77448</us-gaap:IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets>
    <us-gaap:IncreaseDecreaseInOtherOperatingAssets
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c194"
      unitRef="USD">199075</us-gaap:IncreaseDecreaseInOtherOperatingAssets>
    <us-gaap:IncreaseDecreaseInOtherOperatingAssets
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c195"
      unitRef="USD">-96340</us-gaap:IncreaseDecreaseInOtherOperatingAssets>
    <us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c197"
      unitRef="USD">119602</us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c198"
      unitRef="USD">457661</us-gaap:IncreaseDecreaseInAccountsPayableAndAccruedLiabilities>
    <us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c199"
      unitRef="USD">-8688</us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities>
    <us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c200"
      unitRef="USD">114430</us-gaap:IncreaseDecreaseInEmployeeRelatedLiabilities>
    <us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c201"
      unitRef="USD">32281</us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable>
    <us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c202"
      unitRef="USD">12151</us-gaap:IncreaseDecreaseInAccruedIncomeTaxesPayable>
    <us-gaap:IncreaseDecreaseInOtherNoncurrentLiabilities
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c203"
      unitRef="USD">165398</us-gaap:IncreaseDecreaseInOtherNoncurrentLiabilities>
    <us-gaap:IncreaseDecreaseInOtherNoncurrentLiabilities
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c204"
      unitRef="USD">-510513</us-gaap:IncreaseDecreaseInOtherNoncurrentLiabilities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c205"
      unitRef="USD">-630124</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:NetCashProvidedByUsedInOperatingActivities
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c206"
      unitRef="USD">-1864487</us-gaap:NetCashProvidedByUsedInOperatingActivities>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c208"
      unitRef="USD">104675</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquirePropertyPlantAndEquipment
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c209"
      unitRef="USD">73286</us-gaap:PaymentsToAcquirePropertyPlantAndEquipment>
    <us-gaap:PaymentsToAcquireIntangibleAssets
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c210"
      unitRef="USD">1795</us-gaap:PaymentsToAcquireIntangibleAssets>
    <us-gaap:PaymentsToAcquireIntangibleAssets
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c211"
      unitRef="USD">8006</us-gaap:PaymentsToAcquireIntangibleAssets>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c212"
      unitRef="USD">-106470</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:NetCashProvidedByUsedInInvestingActivities
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c213"
      unitRef="USD">-81292</us-gaap:NetCashProvidedByUsedInInvestingActivities>
    <us-gaap:ProceedsFromNotesPayable
      contextRef="d_2022-11-01_2023-01-31_LineOfCreditFacilityAxis-PinnacleFinancialPartnersMember_LongtermDebtTypeAxis-VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember"
      decimals="0"
      id="c215"
      unitRef="USD">20010064</us-gaap:ProceedsFromNotesPayable>
    <us-gaap:ProceedsFromNotesPayable
      contextRef="d_2021-11-01_2022-01-31_LineOfCreditFacilityAxis-PinnacleFinancialPartnersMember_LongtermDebtTypeAxis-VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember"
      decimals="0"
      id="c216"
      unitRef="USD">16492804</us-gaap:ProceedsFromNotesPayable>
    <us-gaap:RepaymentsOfNotesPayable
      contextRef="d_2022-11-01_2023-01-31_LineOfCreditFacilityAxis-PinnacleFinancialPartnersMember_LongtermDebtTypeAxis-VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember"
      decimals="0"
      id="c217"
      unitRef="USD">19186661</us-gaap:RepaymentsOfNotesPayable>
    <us-gaap:RepaymentsOfNotesPayable
      contextRef="d_2021-11-01_2022-01-31_LineOfCreditFacilityAxis-PinnacleFinancialPartnersMember_LongtermDebtTypeAxis-VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember"
      decimals="0"
      id="c218"
      unitRef="USD">14428307</us-gaap:RepaymentsOfNotesPayable>
    <us-gaap:RepaymentsOfLongTermDebt
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c219"
      unitRef="USD">82891</us-gaap:RepaymentsOfLongTermDebt>
    <us-gaap:RepaymentsOfLongTermDebt
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c220"
      unitRef="USD">79597</us-gaap:RepaymentsOfLongTermDebt>
    <us-gaap:PaymentsOfFinancingCosts
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c221"
      unitRef="USD">25000</us-gaap:PaymentsOfFinancingCosts>
    <us-gaap:PaymentsOfFinancingCosts
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c222"
      unitRef="USD">25000</us-gaap:PaymentsOfFinancingCosts>
    <us-gaap:FinanceLeasePrincipalPayments
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c223"
      unitRef="USD">8773</us-gaap:FinanceLeasePrincipalPayments>
    <us-gaap:FinanceLeasePrincipalPayments
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c224"
      unitRef="USD">8366</us-gaap:FinanceLeasePrincipalPayments>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c225"
      unitRef="USD">706739</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:NetCashProvidedByUsedInFinancingActivities
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c226"
      unitRef="USD">1951534</us-gaap:NetCashProvidedByUsedInFinancingActivities>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c227"
      unitRef="USD">-29855</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c228"
      unitRef="USD">5755</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
      contextRef="i_2022-10-31"
      decimals="0"
      id="c229"
      unitRef="USD">215936</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
      contextRef="i_2021-10-31"
      decimals="0"
      id="c230"
      unitRef="USD">132249</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
      contextRef="i_2023-01-31"
      decimals="0"
      id="c231"
      unitRef="USD">186081</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations
      contextRef="i_2022-01-31"
      decimals="0"
      id="c232"
      unitRef="USD">138004</us-gaap:CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations>
    <us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock contextRef="d_2022-11-01_2023-01-31" id="c233">
&lt;table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr style="vertical-align: top;"&gt;
			&lt;td style="width: 27pt;"&gt;
			&lt;p style="margin: 0pt; text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;&lt;a href="#" id="notes" title="notes"/&gt;(1)&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: auto;"&gt;
			&lt;p style="margin: 0pt; text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;General&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 27pt; text-align: justify;"&gt;The accompanying unaudited condensed consolidated financial statements of Optical Cable Corporation and its subsidiaries (collectively, the &#x201c;Company&#x201d; or &#x201c;OCC&#xae;&#x201d;) have been prepared in accordance with U.S. generally accepted accounting principles for interim financial information and the instructions to Form 10&#x2011;Q and Regulation S&#x2011;X. Accordingly, they do not include all of the information and notes required by U.S. generally accepted accounting principles for complete financial statements. In the opinion of management, all material adjustments considered necessary for a fair presentation have been included. Operating results for the three months ended January 31, 2023 are not necessarily indicative of the results for the fiscal year ending October 31, 2023 because the following items, among other things, may impact those results: changing macroeconomic conditions in various markets, direct and indirect impacts of the COVID-19 pandemic including (but not limited to) supply chain and labor constraints impacting production volumes, increased costs and COVID-19 related government and private industry mandates in the areas of the world in which we operate, changes in market conditions, seasonality, inflation and interest rates, changes in technology, competitive conditions, timing of certain projects and purchases by key customers, significant variations in sales resulting from high volatility and timing of large sales orders among a limited number of customers in certain markets, ability of management to execute its business plans, continued ability to maintain and/or secure future debt and/or equity financing to adequately finance ongoing operations; as well as other variables, uncertainties, contingencies and risks set forth as risks in the Company&#x2019;s Annual Report on Form 10&#x2011;K for the fiscal year ended October 31, 2022 (including those set forth in the &#x201c;Forward-Looking Information&#x201d; section), or as otherwise set forth in other filings by the Company as variables, contingencies and/or risks possibly affecting future results. The unaudited condensed consolidated financial statements and condensed notes are presented as permitted by Form 10&#x2011;Q and do not contain certain information included in the Company&#x2019;s annual consolidated financial statements and notes. For further information, refer to the consolidated financial statements and notes thereto included in the Company&#x2019;s Annual Report on Form 10&#x2011;K for the fiscal year ended October 31, 2022.&lt;/p&gt;
</us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock>
    <us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock contextRef="d_2022-11-01_2023-01-31" id="c244">
&lt;table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr style="vertical-align: top;"&gt;
			&lt;td style="width: 27pt;"&gt;
			&lt;p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"&gt;&lt;b&gt;(2)&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: auto;"&gt;
			&lt;p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"&gt;&lt;b&gt;Stock Incentive Plans and Other Share&lt;/b&gt;&#x2011;&lt;b&gt;Based Compensation&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;"&gt;As of January 31, 2023, there were approximately 381,000 remaining shares available for grant under the Optical Cable Corporation Stock Incentive Plan (&#x201c;2017 Plan&#x201d;).&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;"&gt;Share-based compensation expense for employees, a consultant and non-employee Directors recognized in the condensed consolidated statements of operations for the three months ended January 31, 2023 and 2022 was $135,041 and $124,439, respectively. Share-based compensation expense is entirely related to expense recognized in connection with the vesting of restricted stock awards or other stock awards.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt 0pt 0pt 27pt;"&gt;&lt;i&gt;Stock Compensation&lt;/i&gt;&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;"&gt;The Company has granted, and anticipates granting from time to time, restricted stock awards subject to approval by the Compensation Committee of the Board of Directors. Since fiscal year 2004, the Company has exclusively used restricted stock awards for all share-based compensation of employees and consultants, and restricted stock awards or stock awards to non-employee members of the Board of Directors.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;



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

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;"&gt;Restricted stock award activity during the three months ended January 31, 2023 consisted of restricted shares withheld for taxes in connection with the vesting of restricted shares totaling 24,646 shares. OCC restricted stock grants provide the participant with the option to surrender shares to pay for withholding tax obligations resulting from any vesting restricted shares, or to pay cash to the Company or taxing authorities in the amount of the withholding taxes owed on the value of any vesting restricted shares in order to avoid surrendering shares. The Company accrued $100,719 as of January 31, 2023 related to the surrender of shares by participants to pay for withholding taxes on shares that vested on January 31, 2023.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;"&gt;As of January 31, 2023, the estimated amount of compensation cost related to unvested equity-based compensation awards in the form of service-based and operational performance-based shares that the Company will recognize over a 2.5 year weighted-average period is approximately $885,000.&lt;/p&gt;
</us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock>
    <us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant
      contextRef="i_2023-01-31_PlanNameAxis-Plan2017Member"
      decimals="INF"
      id="c248"
      unitRef="Share">381000</us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="d_2022-11-01_2023-01-31_PlanNameAxis-Plan2017Member_TitleOfIndividualAxis-EmployeesConsultantAndNonemployeeDirectorsMember"
      decimals="0"
      id="c253"
      unitRef="USD">135041</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:AllocatedShareBasedCompensationExpense
      contextRef="d_2021-11-01_2022-01-31_PlanNameAxis-Plan2017Member_TitleOfIndividualAxis-EmployeesConsultantAndNonemployeeDirectorsMember"
      decimals="0"
      id="c254"
      unitRef="USD">124439</us-gaap:AllocatedShareBasedCompensationExpense>
    <us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation
      contextRef="d_2022-11-01_2023-01-31_AwardTypeAxis-RestrictedStockMember"
      decimals="INF"
      id="c259"
      unitRef="Share">24646</us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation>
    <us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation
      contextRef="d_2022-11-01_2023-01-31_AwardTypeAxis-RestrictedStockMember"
      decimals="0"
      id="c260"
      unitRef="USD">100719</us-gaap:AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1
      contextRef="d_2022-11-01_2023-01-31_AwardTypeAxis-RestrictedStockMember"
      id="c267">P2Y6M</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1>
    <us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized
      contextRef="i_2023-01-31_AwardTypeAxis-RestrictedStockMember"
      decimals="0"
      id="c268"
      unitRef="USD">885000</us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized>
    <occ:AllowanceForDoubtfulAccountsForTradeAccountsReceivableDisclosureTextBlock contextRef="d_2022-11-01_2023-01-31" id="c269">
&lt;table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr style="vertical-align: top;"&gt;
			&lt;td style="width: 27pt;"&gt;
			&lt;p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"&gt;&lt;b&gt;(3)&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: auto;"&gt;
			&lt;p style="font-family: 'Times New Roman', Times, serif;font-size: 10pt;font-variant:normal;margin:0pt;"&gt;&lt;b&gt;Allowance for Doubtful Accounts for Trade Accounts Receivable&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 28pt;"&gt;A summary of changes in the allowance for doubtful accounts for trade accounts receivable for the three months ended January 31, 2023 and 2022 follows:&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;


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

		&lt;tbody&gt;&lt;tr style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;Three Months Ended&lt;/b&gt; &lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;January 31,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;2023&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;2022&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; width: 68%;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Balance at beginning of period&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;69,643&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;61,527&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Bad debt expense&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(9,787&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(4,328&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Balance at end of period&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;59,856&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;57,199&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;


&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;
</occ:AllowanceForDoubtfulAccountsForTradeAccountsReceivableDisclosureTextBlock>
    <occ:SummaryOfChangesInAllowanceForDoubtfulAccountsForTradeAccountsReceivableTableTextBlock contextRef="d_2022-11-01_2023-01-31" id="c281">
&lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; margin-left: 27pt; width: 95%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;Three Months Ended&lt;/b&gt; &lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;January 31,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;2023&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;2022&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; width: 68%;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Balance at beginning of period&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;69,643&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;61,527&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Bad debt expense&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(9,787&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(4,328&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Balance at end of period&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;59,856&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;57,199&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;
</occ:SummaryOfChangesInAllowanceForDoubtfulAccountsForTradeAccountsReceivableTableTextBlock>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="i_2022-10-31"
      decimals="0"
      id="c283"
      unitRef="USD">69643</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="i_2021-10-31"
      decimals="0"
      id="c284"
      unitRef="USD">61527</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c285"
      unitRef="USD">-9787</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:ProvisionForDoubtfulAccounts
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c286"
      unitRef="USD">-4328</us-gaap:ProvisionForDoubtfulAccounts>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="i_2023-01-31"
      decimals="0"
      id="c287"
      unitRef="USD">59856</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent
      contextRef="i_2022-01-31"
      decimals="0"
      id="c288"
      unitRef="USD">57199</us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent>
    <us-gaap:InventoryDisclosureTextBlock contextRef="d_2022-11-01_2023-01-31" id="c289">
&lt;table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr style="vertical-align: top;"&gt;
			&lt;td style="width: 27pt;"&gt;
			&lt;p style="margin: 0pt; text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;(4)&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: auto;"&gt;
			&lt;p style="margin: 0pt; text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;Inventories&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;"&gt;Inventories as of January 31, 2023 and October 31, 2022 consist of the following:&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;


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

		&lt;tbody&gt;&lt;tr style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;January 31,&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;October 31,&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;2023&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;2022&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; width: 68%;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Finished goods&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;4,614,820&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;3,894,102&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Work in process&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;5,119,033&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;4,054,789&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Raw materials&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;12,157,110&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;11,093,140&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Production supplies&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;370,422&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;396,735&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;"&gt;Total&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;22,261,385&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;19,438,766&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;


&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;
</us-gaap:InventoryDisclosureTextBlock>
    <us-gaap:ScheduleOfInventoryCurrentTableTextBlock contextRef="d_2022-11-01_2023-01-31" id="c301">
&lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; margin-left: 27pt; width: 95%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;January 31,&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;October 31,&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;2023&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;2022&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; width: 68%;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Finished goods&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;4,614,820&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;3,894,102&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Work in process&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;5,119,033&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;4,054,789&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Raw materials&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;12,157,110&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;11,093,140&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Production supplies&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;370,422&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;396,735&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt;"&gt;Total&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;22,261,385&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;19,438,766&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;
</us-gaap:ScheduleOfInventoryCurrentTableTextBlock>
    <us-gaap:InventoryFinishedGoodsNetOfReserves
      contextRef="i_2023-01-31"
      decimals="0"
      id="c303"
      unitRef="USD">4614820</us-gaap:InventoryFinishedGoodsNetOfReserves>
    <us-gaap:InventoryFinishedGoodsNetOfReserves
      contextRef="i_2022-10-31"
      decimals="0"
      id="c304"
      unitRef="USD">3894102</us-gaap:InventoryFinishedGoodsNetOfReserves>
    <us-gaap:InventoryWorkInProcessNetOfReserves
      contextRef="i_2023-01-31"
      decimals="0"
      id="c305"
      unitRef="USD">5119033</us-gaap:InventoryWorkInProcessNetOfReserves>
    <us-gaap:InventoryWorkInProcessNetOfReserves
      contextRef="i_2022-10-31"
      decimals="0"
      id="c306"
      unitRef="USD">4054789</us-gaap:InventoryWorkInProcessNetOfReserves>
    <us-gaap:InventoryRawMaterialsNetOfReserves
      contextRef="i_2023-01-31"
      decimals="0"
      id="c307"
      unitRef="USD">12157110</us-gaap:InventoryRawMaterialsNetOfReserves>
    <us-gaap:InventoryRawMaterialsNetOfReserves
      contextRef="i_2022-10-31"
      decimals="0"
      id="c308"
      unitRef="USD">11093140</us-gaap:InventoryRawMaterialsNetOfReserves>
    <us-gaap:InventorySuppliesNetOfReserves
      contextRef="i_2023-01-31"
      decimals="0"
      id="c309"
      unitRef="USD">370422</us-gaap:InventorySuppliesNetOfReserves>
    <us-gaap:InventorySuppliesNetOfReserves
      contextRef="i_2022-10-31"
      decimals="0"
      id="c310"
      unitRef="USD">396735</us-gaap:InventorySuppliesNetOfReserves>
    <us-gaap:InventoryNet
      contextRef="i_2023-01-31"
      decimals="0"
      id="c311"
      unitRef="USD">22261385</us-gaap:InventoryNet>
    <us-gaap:InventoryNet
      contextRef="i_2022-10-31"
      decimals="0"
      id="c312"
      unitRef="USD">19438766</us-gaap:InventoryNet>
    <us-gaap:ProductWarrantyDisclosureTextBlock contextRef="d_2022-11-01_2023-01-31" id="c313">
&lt;table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr style="vertical-align: top;"&gt;
			&lt;td style="width: 27pt;"&gt;
			&lt;p style="margin: 0pt; text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;(5) &lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: auto;"&gt;
			&lt;p style="margin: 0pt; text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;Product Warranties&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 27pt; text-align: justify;"&gt;As of January 31, 2023 and October&#160;31, 2022, the Company&#x2019;s accrual for estimated product warranty claims totaled $65,000 and $75,000, respectively, and is included in accounts payable and accrued expenses. Warranty claims expense for the three months ended January 31, 2023 and 2022 totaled $16,574 and $7,894, respectively.&lt;/p&gt;

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



&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;"&gt;The following table summarizes the changes in the Company&#x2019;s accrual for product warranties during the three months ended January 31, 2023 and 2022:&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;


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

		&lt;tbody&gt;&lt;tr style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;Three Months Ended&lt;/b&gt; &lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;January 31,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;2023&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;2022&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; width: 68%;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Balance at beginning of period&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;75,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;75,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Liabilities accrued for warranties issued during the period&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;55,430&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;55,243&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Warranty claims and costs paid during the period&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;(26,574&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;(7,894&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Changes in liability for pre-existing warranties during the period&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(38,856&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(47,349&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Balance at end of period&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;65,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;75,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;


&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;
</us-gaap:ProductWarrantyDisclosureTextBlock>
    <us-gaap:ProductWarrantyAccrual
      contextRef="i_2023-01-31_BalanceSheetLocationAxis-AccountsPayableAndAccruedLiabilitiesMember"
      decimals="0"
      id="c315"
      unitRef="USD">65000</us-gaap:ProductWarrantyAccrual>
    <us-gaap:ProductWarrantyAccrual
      contextRef="i_2022-10-31_BalanceSheetLocationAxis-AccountsPayableAndAccruedLiabilitiesMember"
      decimals="0"
      id="c316"
      unitRef="USD">75000</us-gaap:ProductWarrantyAccrual>
    <us-gaap:ProductWarrantyExpense
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c317"
      unitRef="USD">16574</us-gaap:ProductWarrantyExpense>
    <us-gaap:ProductWarrantyExpense
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c318"
      unitRef="USD">7894</us-gaap:ProductWarrantyExpense>
    <us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock contextRef="d_2022-11-01_2023-01-31" id="c329">
&lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; margin-left: 27pt; width: 95%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;Three Months Ended&lt;/b&gt; &lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;January 31,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;2023&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;2022&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; width: 68%;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Balance at beginning of period&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;75,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;75,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Liabilities accrued for warranties issued during the period&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;55,430&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;55,243&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Warranty claims and costs paid during the period&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;(26,574&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;(7,894&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Changes in liability for pre-existing warranties during the period&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(38,856&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(47,349&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Balance at end of period&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;65,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;75,000&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;
</us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock>
    <us-gaap:ProductWarrantyAccrual
      contextRef="i_2022-10-31"
      decimals="0"
      id="c331"
      unitRef="USD">75000</us-gaap:ProductWarrantyAccrual>
    <us-gaap:ProductWarrantyAccrual
      contextRef="i_2021-10-31"
      decimals="0"
      id="c332"
      unitRef="USD">75000</us-gaap:ProductWarrantyAccrual>
    <us-gaap:ProductWarrantyAccrualWarrantiesIssued
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c333"
      unitRef="USD">55430</us-gaap:ProductWarrantyAccrualWarrantiesIssued>
    <us-gaap:ProductWarrantyAccrualWarrantiesIssued
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c334"
      unitRef="USD">55243</us-gaap:ProductWarrantyAccrualWarrantiesIssued>
    <us-gaap:ProductWarrantyAccrualPayments
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c335"
      unitRef="USD">26574</us-gaap:ProductWarrantyAccrualPayments>
    <us-gaap:ProductWarrantyAccrualPayments
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c336"
      unitRef="USD">7894</us-gaap:ProductWarrantyAccrualPayments>
    <us-gaap:ProductWarrantyAccrualPreexistingIncreaseDecrease
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c337"
      unitRef="USD">-38856</us-gaap:ProductWarrantyAccrualPreexistingIncreaseDecrease>
    <us-gaap:ProductWarrantyAccrualPreexistingIncreaseDecrease
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c338"
      unitRef="USD">-47349</us-gaap:ProductWarrantyAccrualPreexistingIncreaseDecrease>
    <us-gaap:ProductWarrantyAccrual
      contextRef="i_2023-01-31"
      decimals="0"
      id="c339"
      unitRef="USD">65000</us-gaap:ProductWarrantyAccrual>
    <us-gaap:ProductWarrantyAccrual
      contextRef="i_2022-01-31"
      decimals="0"
      id="c340"
      unitRef="USD">75000</us-gaap:ProductWarrantyAccrual>
    <us-gaap:LongTermDebtTextBlock contextRef="d_2022-11-01_2023-01-31" id="c341">
&lt;table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr style="vertical-align: top;"&gt;
			&lt;td style="width: 27pt;"&gt;
			&lt;p style="margin: 0pt; text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;(6)&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: auto;"&gt;
			&lt;p style="margin: 0pt; text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;Long-term Debt and Notes Payable &lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 28pt;"&gt;The Company has credit facilities consisting of a real estate term loan, as amended and restated (the &#x201c;Virginia Real Estate Loan&#x201d;), a supplemental real estate term loan, as amended and restated (the &#x201c;North Carolina Real Estate Loan&#x201d;) and a Revolving Credit Master Promissory Note and related agreements (collectively, the &#x201c;Revolver&#x201d;).&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;"&gt;Both the Virginia Real Estate Loan and the North Carolina Real Estate Loan are with Northeast Bank, have a fixed interest rate of 3.95% and are secured by a first lien deed of trust on the Company&#x2019;s real property.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;text-indent:27pt;"&gt;Long-term debt as of January 31, 2023 and October 31, 2022 consists of the following:&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;


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

		&lt;tbody&gt;&lt;tr style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;January 31,&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;October 31,&lt;/b&gt;&lt;/b&gt; &lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;2023&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;2022&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt; text-indent: -9pt;"&gt;Virginia Real Estate Loan ($6.5 million original principal) payable in monthly installments of $31,812, including interest (at 3.95%), with final payment of $3,318,029 due May 1, 2024&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;3,610,701&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;3,669,294&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt; text-indent: -9pt;"&gt;North Carolina Real Estate Loan ($2.24 million original principal) payable in monthly installments of $10,963, including interest (at 3.95%), with final payment of $711,773 due May 1, 2024&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;"&gt;835,011&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;"&gt;859,308&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;"&gt;Total long-term debt&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;4,445,712&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;4,528,602&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Less current installments&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid rgb(0, 0, 0);"&gt;341,522&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid rgb(0, 0, 0);"&gt;338,094&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;"&gt;Long-term debt, excluding current installments&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;4,104,190&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;4,190,508&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;


&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;"&gt;The Revolver with North Mill Capital LLC (now doing business as SLR Business Credit, &#x201c;SLR&#x201d;) provides the Company with one or more advances in an amount up to: (a) 85% of the aggregate outstanding amount of eligible accounts (the &#x201c;eligible accounts loan value&#x201d;); plus (b) the lowest of (i) an amount up to 35% of the aggregate value of eligible inventory, (ii) $5,000,000, and (iii) an amount not to exceed 100% of the then outstanding eligible accounts loan value; minus (c) $1,150,000.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;"&gt;The maximum aggregate principal amount subject to the Revolver is $18,000,000. Interest accrues on the daily balance at the per annum rate of 1.5% above the Prime Rate in effect from time to time, but not less than 4.75% (the &#x201c;Applicable Rate&#x201d;). In the event of a default, interest may become 6.0% above the Applicable Rate. As of January 31, 2023, the Revolver accrued interest at the prime lending rate plus 1.5% (resulting in a 9.0% rate at January 31, 2023). The termination date of the Revolver is July 24, 2025 and the loan may be extended in &lt;span style="-sec-ix-hidden:c384"&gt;one&lt;/span&gt; year periods subject to the agreement of SLR.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;



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

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;"&gt;The Revolver is secured by all of the following assets: properties, rights and interests in property of the Company whether now owned or existing, or hereafter acquired or arising, and wherever located; all accounts, equipment, commercial tort claims, general intangibles, chattel paper, inventory, negotiable collateral, investment property, financial assets, letter-of-credit rights, supporting obligations, deposit accounts, money or assets of the Company, which hereafter come into the possession, custody, or control of SLR; all proceeds and products, whether tangible or intangible, of any of the foregoing, including proceeds of insurance covering any or all of the foregoing; any and all tangible or intangible property resulting from the sale, lease, license or other disposition of any of the foregoing, or any portion thereof or interest therein, and all proceeds thereof; and any other assets of the Company which may be subject to a lien in favor of SLR as security for the obligations under the Loan Agreement.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;"&gt;As of January 31, 2023, the Company had $6.8 million of outstanding borrowings on its Revolver and $4.8 million in available credit. As of October 31, 2022, the Company had $6.0 million of outstanding borrowings on its Revolver and $5.9 million in available credit.&lt;/p&gt;
</us-gaap:LongTermDebtTextBlock>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="i_2023-01-31_LineOfCreditFacilityAxis-PinnacleFinancialPartnersMember_LongtermDebtTypeAxis-VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember"
      decimals="4"
      id="c343"
      unitRef="Pure">0.0395</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:ScheduleOfDebtTableTextBlock contextRef="d_2022-11-01_2023-01-31" id="c389">
&lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 5%; margin-left: 27pt; width: 95%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;January 31,&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;October 31,&lt;/b&gt;&lt;/b&gt; &lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;2023&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;2022&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt; text-indent: -9pt;"&gt;Virginia Real Estate Loan ($6.5 million original principal) payable in monthly installments of $31,812, including interest (at 3.95%), with final payment of $3,318,029 due May 1, 2024&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;3,610,701&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;3,669,294&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt; text-indent: -9pt;"&gt;North Carolina Real Estate Loan ($2.24 million original principal) payable in monthly installments of $10,963, including interest (at 3.95%), with final payment of $711,773 due May 1, 2024&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;"&gt;835,011&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;"&gt;859,308&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;"&gt;Total long-term debt&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;4,445,712&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right;"&gt;4,528,602&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Less current installments&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid rgb(0, 0, 0);"&gt;341,522&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; text-align: right; border-bottom: 1px solid rgb(0, 0, 0);"&gt;338,094&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 18pt;"&gt;Long-term debt, excluding current installments&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;4,104,190&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 13%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;"&gt;4,190,508&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;
</us-gaap:ScheduleOfDebtTableTextBlock>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="i_2023-01-31_LongtermDebtTypeAxis-VirginiaRealEstateLoanMember"
      decimals="-5"
      id="c391"
      unitRef="USD">6500000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="i_2022-10-31_LongtermDebtTypeAxis-VirginiaRealEstateLoanMember"
      decimals="-5"
      id="c392"
      unitRef="USD">6500000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentPeriodicPayment
      contextRef="d_2022-11-01_2023-01-31_LongtermDebtTypeAxis-VirginiaRealEstateLoanMember"
      decimals="0"
      id="c393"
      unitRef="USD">31812</us-gaap:DebtInstrumentPeriodicPayment>
    <us-gaap:DebtInstrumentPeriodicPayment
      contextRef="d_2021-11-01_2022-10-31_LongtermDebtTypeAxis-VirginiaRealEstateLoanMember"
      decimals="0"
      id="c394"
      unitRef="USD">31812</us-gaap:DebtInstrumentPeriodicPayment>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="i_2023-01-31_LongtermDebtTypeAxis-VirginiaRealEstateLoanMember"
      decimals="4"
      id="c395"
      unitRef="Pure">0.0395</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="i_2022-10-31_LongtermDebtTypeAxis-VirginiaRealEstateLoanMember"
      decimals="4"
      id="c396"
      unitRef="Pure">0.0395</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid
      contextRef="i_2023-01-31_LongtermDebtTypeAxis-VirginiaRealEstateLoanMember"
      decimals="0"
      id="c397"
      unitRef="USD">3318029</us-gaap:DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid>
    <us-gaap:DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid
      contextRef="i_2022-10-31_LongtermDebtTypeAxis-VirginiaRealEstateLoanMember"
      decimals="0"
      id="c398"
      unitRef="USD">3318029</us-gaap:DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid>
    <us-gaap:DebtInstrumentMaturityDate
      contextRef="d_2022-11-01_2023-01-31_LongtermDebtTypeAxis-VirginiaRealEstateLoanMember"
      id="c399">2024-05-01</us-gaap:DebtInstrumentMaturityDate>
    <us-gaap:DebtInstrumentMaturityDate
      contextRef="d_2021-11-01_2022-10-31_LongtermDebtTypeAxis-VirginiaRealEstateLoanMember"
      id="c400">2024-05-01</us-gaap:DebtInstrumentMaturityDate>
    <us-gaap:LongTermDebt
      contextRef="i_2023-01-31_LongtermDebtTypeAxis-VirginiaRealEstateLoanMember"
      decimals="0"
      id="c401"
      unitRef="USD">3610701</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="i_2022-10-31_LongtermDebtTypeAxis-VirginiaRealEstateLoanMember"
      decimals="0"
      id="c402"
      unitRef="USD">3669294</us-gaap:LongTermDebt>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="i_2023-01-31_LongtermDebtTypeAxis-NorthCarolinaRealEstateLoanMember"
      decimals="-4"
      id="c403"
      unitRef="USD">2240000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentFaceAmount
      contextRef="i_2022-10-31_LongtermDebtTypeAxis-NorthCarolinaRealEstateLoanMember"
      decimals="-4"
      id="c404"
      unitRef="USD">2240000</us-gaap:DebtInstrumentFaceAmount>
    <us-gaap:DebtInstrumentPeriodicPayment
      contextRef="d_2022-11-01_2023-01-31_LongtermDebtTypeAxis-NorthCarolinaRealEstateLoanMember"
      decimals="0"
      id="c405"
      unitRef="USD">10963</us-gaap:DebtInstrumentPeriodicPayment>
    <us-gaap:DebtInstrumentPeriodicPayment
      contextRef="d_2021-11-01_2022-10-31_LongtermDebtTypeAxis-NorthCarolinaRealEstateLoanMember"
      decimals="0"
      id="c406"
      unitRef="USD">10963</us-gaap:DebtInstrumentPeriodicPayment>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="i_2023-01-31_LongtermDebtTypeAxis-NorthCarolinaRealEstateLoanMember"
      decimals="4"
      id="c407"
      unitRef="Pure">0.0395</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentInterestRateStatedPercentage
      contextRef="i_2022-10-31_LongtermDebtTypeAxis-NorthCarolinaRealEstateLoanMember"
      decimals="4"
      id="c408"
      unitRef="Pure">0.0395</us-gaap:DebtInstrumentInterestRateStatedPercentage>
    <us-gaap:DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid
      contextRef="i_2023-01-31_LongtermDebtTypeAxis-NorthCarolinaRealEstateLoanMember"
      decimals="0"
      id="c409"
      unitRef="USD">711773</us-gaap:DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid>
    <us-gaap:DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid
      contextRef="i_2022-10-31_LongtermDebtTypeAxis-NorthCarolinaRealEstateLoanMember"
      decimals="0"
      id="c410"
      unitRef="USD">711773</us-gaap:DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid>
    <us-gaap:DebtInstrumentMaturityDate
      contextRef="d_2022-11-01_2023-01-31_LongtermDebtTypeAxis-NorthCarolinaRealEstateLoanMember"
      id="c411">2024-05-01</us-gaap:DebtInstrumentMaturityDate>
    <us-gaap:DebtInstrumentMaturityDate
      contextRef="d_2021-11-01_2022-10-31_LongtermDebtTypeAxis-NorthCarolinaRealEstateLoanMember"
      id="c412">2024-05-01</us-gaap:DebtInstrumentMaturityDate>
    <us-gaap:LongTermDebt
      contextRef="i_2023-01-31_LongtermDebtTypeAxis-NorthCarolinaRealEstateLoanMember"
      decimals="0"
      id="c413"
      unitRef="USD">835011</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="i_2022-10-31_LongtermDebtTypeAxis-NorthCarolinaRealEstateLoanMember"
      decimals="0"
      id="c414"
      unitRef="USD">859308</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="i_2023-01-31"
      decimals="0"
      id="c415"
      unitRef="USD">4445712</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebt
      contextRef="i_2022-10-31"
      decimals="0"
      id="c416"
      unitRef="USD">4528602</us-gaap:LongTermDebt>
    <us-gaap:LongTermDebtCurrent
      contextRef="i_2023-01-31"
      decimals="0"
      id="c417"
      unitRef="USD">341522</us-gaap:LongTermDebtCurrent>
    <us-gaap:LongTermDebtCurrent
      contextRef="i_2022-10-31"
      decimals="0"
      id="c418"
      unitRef="USD">338094</us-gaap:LongTermDebtCurrent>
    <us-gaap:LongTermDebtNoncurrent
      contextRef="i_2023-01-31"
      decimals="0"
      id="c419"
      unitRef="USD">4104190</us-gaap:LongTermDebtNoncurrent>
    <us-gaap:LongTermDebtNoncurrent
      contextRef="i_2022-10-31"
      decimals="0"
      id="c420"
      unitRef="USD">4190508</us-gaap:LongTermDebtNoncurrent>
    <occ:LineOfCreditFacilityPercentOfEligibleAccounts
      contextRef="i_2023-01-31_CreditFacilityAxis-RevolvingCreditFacilityMember_LineOfCreditFacilityAxis-NorthMillCapitalLlcMember"
      decimals="2"
      id="c374"
      unitRef="Pure">0.85</occ:LineOfCreditFacilityPercentOfEligibleAccounts>
    <occ:LineOfCreditFacilityPercentOfEligibleInventory
      contextRef="i_2023-01-31_CreditFacilityAxis-RevolvingCreditFacilityMember_LineOfCreditFacilityAxis-NorthMillCapitalLlcMember"
      decimals="2"
      id="c375"
      unitRef="Pure">0.35</occ:LineOfCreditFacilityPercentOfEligibleInventory>
    <occ:LineOfCreditFacilityAdditionalCapacityForAdvances
      contextRef="i_2023-01-31_CreditFacilityAxis-RevolvingCreditFacilityMember_LineOfCreditFacilityAxis-NorthMillCapitalLlcMember"
      decimals="0"
      id="c376"
      unitRef="USD">5000000</occ:LineOfCreditFacilityAdditionalCapacityForAdvances>
    <occ:LineOfCreditFacilityRestrictedCapacityForAdvances
      contextRef="i_2023-01-31_CreditFacilityAxis-RevolvingCreditFacilityMember_LineOfCreditFacilityAxis-NorthMillCapitalLlcMember"
      decimals="0"
      id="c377"
      unitRef="USD">1150000</occ:LineOfCreditFacilityRestrictedCapacityForAdvances>
    <us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity
      contextRef="i_2023-01-31_CreditFacilityAxis-RevolvingCreditFacilityMember_LineOfCreditFacilityAxis-NorthMillCapitalLlcMember"
      decimals="0"
      id="c378"
      unitRef="USD">18000000</us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="d_2022-11-01_2023-01-31_CreditFacilityAxis-RevolvingCreditFacilityMember_LineOfCreditFacilityAxis-NorthMillCapitalLlcMember_VariableRateAxis-PrimeRateMember"
      decimals="3"
      id="c379"
      unitRef="Pure">0.015</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentInterestRateEffectivePercentage
      contextRef="i_2020-07-24_CreditFacilityAxis-RevolvingCreditFacilityMember_LineOfCreditFacilityAxis-NorthMillCapitalLlcMember"
      decimals="4"
      id="c380"
      unitRef="Pure">0.0475</us-gaap:DebtInstrumentInterestRateEffectivePercentage>
    <us-gaap:DebtInstrumentInterestRateEffectivePercentage
      contextRef="i_2023-01-31_CreditFacilityAxis-RevolvingCreditFacilityMember_LineOfCreditFacilityAxis-NorthMillCapitalLlcMember_RangeAxis-MaximumMember"
      decimals="2"
      id="c381"
      unitRef="Pure">0.060</us-gaap:DebtInstrumentInterestRateEffectivePercentage>
    <us-gaap:DebtInstrumentBasisSpreadOnVariableRate1
      contextRef="d_2022-11-01_2023-01-31_CreditFacilityAxis-RevolvingCreditFacilityMember_LineOfCreditFacilityAxis-NorthMillCapitalLlcMember_VariableRateAxis-PrimeRateMember"
      decimals="3"
      id="c382"
      unitRef="Pure">0.015</us-gaap:DebtInstrumentBasisSpreadOnVariableRate1>
    <us-gaap:DebtInstrumentInterestRateEffectivePercentage
      contextRef="i_2023-01-31_CreditFacilityAxis-RevolvingCreditFacilityMember_LineOfCreditFacilityAxis-NorthMillCapitalLlcMember"
      decimals="2"
      id="c383"
      unitRef="Pure">0.090</us-gaap:DebtInstrumentInterestRateEffectivePercentage>
    <us-gaap:LineOfCredit
      contextRef="i_2023-01-31_CreditFacilityAxis-RevolvingCreditFacilityMember_LineOfCreditFacilityAxis-PinnacleFinancialPartnersMember"
      decimals="-5"
      id="c385"
      unitRef="USD">6800000</us-gaap:LineOfCredit>
    <us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity
      contextRef="i_2023-01-31_CreditFacilityAxis-RevolvingCreditFacilityMember_LineOfCreditFacilityAxis-PinnacleFinancialPartnersMember"
      decimals="-5"
      id="c386"
      unitRef="USD">4800000</us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity>
    <us-gaap:LineOfCredit
      contextRef="i_2022-10-31_CreditFacilityAxis-RevolvingCreditFacilityMember_LineOfCreditFacilityAxis-PinnacleFinancialPartnersMember"
      decimals="-6"
      id="c387"
      unitRef="USD">6000000.0</us-gaap:LineOfCredit>
    <us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity
      contextRef="i_2022-10-31_CreditFacilityAxis-RevolvingCreditFacilityMember_LineOfCreditFacilityAxis-PinnacleFinancialPartnersMember"
      decimals="-5"
      id="c388"
      unitRef="USD">5900000</us-gaap:LineOfCreditFacilityRemainingBorrowingCapacity>
    <occ:LesseeOperatingAndFinanceLeasesDisclosureTextBlock contextRef="d_2022-11-01_2023-01-31" id="c421">
&lt;table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr style="vertical-align: top;"&gt;
			&lt;td style="width: 27pt;"&gt;
			&lt;p style="margin: 0pt; text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;(7)&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: auto;"&gt;
			&lt;p style="margin: 0pt; text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;Leases&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;"&gt;The Company has an operating lease agreement for approximately 34,000 square feet of office, manufacturing and warehouse space in Plano, Texas (near Dallas). The lease term expires on November 30, 2024.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;"&gt;The Company has an operating lease agreement for approximately 36,000 square feet of warehouse space in Roanoke, Virginia. During the first quarter of fiscal year 2023, the lease term was extended for an additional three years. The new expiration date is April 30, 2026.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;"&gt;The Company also leases certain office equipment under operating leases with initial 60 month terms. The lease terms expire in February and April of 2025.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;"&gt;OCC leases printers that are used in the Roanoke, Virginia manufacturing facility. The lease term expires on August 22, 2026. The right-of-use asset is being amortized on a straight line basis over seven years. When the lease term ends, the remaining net book value of the right-of-use asset will be classified as property and equipment.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;"&gt;The Company&#x2019;s lease contracts may include options to extend or terminate the leases. The Company exercises judgment to determine the term of those leases when such options are present and include such options in the calculation of the lease term when it is reasonably certain that it will exercise those options.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;"&gt;The Company includes contract lease components in its determination of lease payments, while non-lease components of the contracts, such as taxes, insurance, and common area maintenance, are expensed as incurred. At commencement, right-of-use assets and lease liabilities are measured at the present value of future lease payments over the lease term. The Company uses its incremental borrowing rate based on information available at the time of lease commencement to measure the present value of future payments.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;



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

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;"&gt;Operating lease expense is recognized on a straight-line basis over the lease term. Short term leases with an initial term of 12 months or less are expensed as incurred. The Company&#x2019;s short term leases have month-to-month terms.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;"&gt;Operating lease right-of-use assets of $867,974 and $662,328 were included in other assets at January 31, 2023 and October 31, 2022, respectively. Operating lease liabilities of $387,013 and $541,904 were included in accounts payable and accrued expenses, and other noncurrent liabilities, respectively, at January 31, 2023. Operating lease liabilities of $355,183 and $374,570 were included in accounts payable and accrued expenses, and other noncurrent liabilities, respectively, at October 31, 2022. Operating lease expense recognized during the three months ended January 31, 2023 and 2022 totaled $103,333.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;"&gt;The weighted average remaining lease term was 29 months and the weighted average discount rate was 7.0% as of January 31, 2023.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;"&gt;For the three months ended January 31, 2023 and 2022, cash paid for operating lease liabilities totaled $109,815 and $107,284, respectively. For the three months ended January 31, 2023, right-of-use assets obtained in exchange for new operating lease liabilities totaled $316,028 and there was a reduction in right-of-use assets for modified operating lease liabilities totaling $15,719. For the three months ended January 31, 2022, there were &lt;span style="-sec-ix-hidden:c440"&gt;no&lt;/span&gt; right-of-use assets obtained in exchange for new operating lease liabilities.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;"&gt;Financing lease right-of-use assets of $163,465 and $170,839 were included in other assets at January 31, 2023 and October 31, 2022, respectively. Financing lease liabilities of $36,150 and $121,711 were included in accounts payable and accrued expenses, and other noncurrent liabilities, respectively, at January 31, 2023. Financing lease liabilities of $35,724 and $130,911 were included in accounts payable and accrued expenses, and other noncurrent liabilities, respectively, at October 31, 2022. Interest expense related to the financing lease totaled $1,944 and $2,350 for the three month periods ended January 31, 2023 and January 31, 2022, respectively. Amortization expense related to the financing lease totaled $7,374 for the three month periods ended January 31, 2023 and January 31, 2022.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;"&gt;The remaining lease term for the financing lease is 43 months and the discount rate is 4.75% as of January 31, 2023.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;"&gt;For the three months ended January 31, 2023, cash paid for the financing lease liability totaled $1,944 for interest and $8,773 for principal. For the three months ended January 31, 2022, cash paid for the financing lease liability totaled $2,350 for interest and $8,366 for principal.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;



&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;"&gt;The Company&#x2019;s future payments due under leases reconciled to the lease liabilities are as follows:&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;


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

		&lt;tbody&gt;&lt;tr style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; width: 62%; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;&lt;b&gt;&lt;b&gt;Fiscal Year&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;Operating &lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;

			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;leases&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;Finance&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;

			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;lease&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;2023&#160;&lt;b style="font-size: 10pt;"&gt;(1)&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;329,201&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;32,151&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;2024&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;448,298&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;42,868&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;2025&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;177,997&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;42,868&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;2026&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;63,644&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;55,715&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Total undiscounted lease payments&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;1,019,140&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;173,602&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Present value discount&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(90,223&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(15,740&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Total lease liability&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;928,917&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;157,862&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;


&lt;p style="margin: 0pt; font-size: 10pt; font-family: &amp;quot;Times New Roman&amp;quot;;"&gt;&#160;&lt;/p&gt;

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

		&lt;tbody&gt;&lt;tr style="vertical-align: bottom;"&gt;
			&lt;td colspan="4" style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;&lt;b&gt;&lt;b&gt;(1)&lt;/b&gt; Remaining nine months of fiscal year 2023.&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;
</occ:LesseeOperatingAndFinanceLeasesDisclosureTextBlock>
    <us-gaap:AreaOfRealEstateProperty
      contextRef="i_2023-01-31_LeaseContractualTermAxis-OperatingLeaseForOfficeManufacturingAndWarehouseSpaceInPlanoTexasMember"
      decimals="INF"
      id="c423"
      unitRef="SquareFoot">34000</us-gaap:AreaOfRealEstateProperty>
    <us-gaap:AreaOfRealEstateProperty
      contextRef="i_2023-01-31_LeaseContractualTermAxis-OperatingLeaseForWarehouseSpaceInRoanokeVirginiaMember"
      decimals="INF"
      id="c424"
      unitRef="SquareFoot">36000</us-gaap:AreaOfRealEstateProperty>
    <us-gaap:LesseeOperatingLeaseTermOfContract
      contextRef="i_2023-01-31_LeaseContractualTermAxis-OperatingLeaseForOfficeEquipmentMember"
      id="c425">P60M</us-gaap:LesseeOperatingLeaseTermOfContract>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="i_2023-01-31_BalanceSheetLocationAxis-OtherAssetsMember"
      decimals="0"
      id="c426"
      unitRef="USD">867974</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseRightOfUseAsset
      contextRef="i_2022-10-31_BalanceSheetLocationAxis-OtherAssetsMember"
      decimals="0"
      id="c427"
      unitRef="USD">662328</us-gaap:OperatingLeaseRightOfUseAsset>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="i_2023-01-31_BalanceSheetLocationAxis-AccountsPayableAndAccruedLiabilitiesMember"
      decimals="0"
      id="c428"
      unitRef="USD">387013</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="i_2023-01-31_BalanceSheetLocationAxis-OtherNoncurrentLiabilitiesMember"
      decimals="0"
      id="c429"
      unitRef="USD">541904</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseLiabilityCurrent
      contextRef="i_2022-10-31_BalanceSheetLocationAxis-AccountsPayableAndAccruedLiabilitiesMember"
      decimals="0"
      id="c430"
      unitRef="USD">355183</us-gaap:OperatingLeaseLiabilityCurrent>
    <us-gaap:OperatingLeaseLiabilityNoncurrent
      contextRef="i_2022-10-31_BalanceSheetLocationAxis-OtherNoncurrentLiabilitiesMember"
      decimals="0"
      id="c431"
      unitRef="USD">374570</us-gaap:OperatingLeaseLiabilityNoncurrent>
    <us-gaap:OperatingLeaseExpense
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c432"
      unitRef="USD">103333</us-gaap:OperatingLeaseExpense>
    <us-gaap:OperatingLeaseExpense
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c433"
      unitRef="USD">103333</us-gaap:OperatingLeaseExpense>
    <us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1 contextRef="i_2023-01-31" id="c434">P29M</us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1>
    <us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent
      contextRef="i_2023-01-31"
      decimals="2"
      id="c435"
      unitRef="Pure">0.070</us-gaap:OperatingLeaseWeightedAverageDiscountRatePercent>
    <us-gaap:OperatingLeasePayments
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c436"
      unitRef="USD">109815</us-gaap:OperatingLeasePayments>
    <us-gaap:OperatingLeasePayments
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c437"
      unitRef="USD">107284</us-gaap:OperatingLeasePayments>
    <us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c438"
      unitRef="USD">316028</us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability>
    <occ:OperatingLeaseRightofUseAssetReduction
      contextRef="i_2023-01-31"
      decimals="0"
      id="c439"
      unitRef="USD">15719</occ:OperatingLeaseRightofUseAssetReduction>
    <us-gaap:FinanceLeaseRightOfUseAsset
      contextRef="i_2023-01-31_BalanceSheetLocationAxis-OtherAssetsMember"
      decimals="0"
      id="c441"
      unitRef="USD">163465</us-gaap:FinanceLeaseRightOfUseAsset>
    <us-gaap:FinanceLeaseRightOfUseAsset
      contextRef="i_2022-10-31_BalanceSheetLocationAxis-OtherAssetsMember"
      decimals="0"
      id="c442"
      unitRef="USD">170839</us-gaap:FinanceLeaseRightOfUseAsset>
    <us-gaap:FinanceLeaseLiabilityCurrent
      contextRef="i_2023-01-31_BalanceSheetLocationAxis-AccountsPayableAndAccruedLiabilitiesCurrentMember"
      decimals="0"
      id="c443"
      unitRef="USD">36150</us-gaap:FinanceLeaseLiabilityCurrent>
    <us-gaap:FinanceLeaseLiabilityNoncurrent
      contextRef="i_2023-01-31_BalanceSheetLocationAxis-OtherNoncurrentLiabilitiesMember"
      decimals="0"
      id="c444"
      unitRef="USD">121711</us-gaap:FinanceLeaseLiabilityNoncurrent>
    <us-gaap:FinanceLeaseLiabilityCurrent
      contextRef="i_2022-10-31_BalanceSheetLocationAxis-AccountsPayableAndAccruedLiabilitiesCurrentMember"
      decimals="0"
      id="c445"
      unitRef="USD">35724</us-gaap:FinanceLeaseLiabilityCurrent>
    <us-gaap:FinanceLeaseLiabilityNoncurrent
      contextRef="i_2022-10-31_BalanceSheetLocationAxis-OtherNoncurrentLiabilitiesMember"
      decimals="0"
      id="c446"
      unitRef="USD">130911</us-gaap:FinanceLeaseLiabilityNoncurrent>
    <us-gaap:FinanceLeaseInterestExpense
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c447"
      unitRef="USD">1944</us-gaap:FinanceLeaseInterestExpense>
    <us-gaap:FinanceLeaseInterestExpense
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c448"
      unitRef="USD">2350</us-gaap:FinanceLeaseInterestExpense>
    <us-gaap:FinanceLeaseRightOfUseAssetAmortization
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c449"
      unitRef="USD">7374</us-gaap:FinanceLeaseRightOfUseAssetAmortization>
    <us-gaap:FinanceLeaseRightOfUseAssetAmortization
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c450"
      unitRef="USD">7374</us-gaap:FinanceLeaseRightOfUseAssetAmortization>
    <us-gaap:LesseeFinanceLeaseRemainingLeaseTerm contextRef="i_2023-01-31" id="c451">P43M</us-gaap:LesseeFinanceLeaseRemainingLeaseTerm>
    <us-gaap:LesseeFinanceLeaseDiscountRate
      contextRef="i_2023-01-31"
      decimals="4"
      id="c452"
      unitRef="Pure">0.0475</us-gaap:LesseeFinanceLeaseDiscountRate>
    <us-gaap:FinanceLeaseInterestExpense
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c453"
      unitRef="USD">1944</us-gaap:FinanceLeaseInterestExpense>
    <us-gaap:FinanceLeasePrincipalPayments
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c454"
      unitRef="USD">8773</us-gaap:FinanceLeasePrincipalPayments>
    <us-gaap:FinanceLeaseInterestExpense
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c455"
      unitRef="USD">2350</us-gaap:FinanceLeaseInterestExpense>
    <us-gaap:FinanceLeasePrincipalPayments
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c456"
      unitRef="USD">8366</us-gaap:FinanceLeasePrincipalPayments>
    <occ:LesseeLeaseLiabilityMaturityTableTextBlock contextRef="d_2022-11-01_2023-01-31" id="c471">
&lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 10%; margin-left: 10%; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; width: 62%; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;&lt;b&gt;&lt;b&gt;Fiscal Year&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;Operating &lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;

			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;leases&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;Finance&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;

			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;lease&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;2023&#160;&lt;b style="font-size: 10pt;"&gt;(1)&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;329,201&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;32,151&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;2024&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;448,298&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;42,868&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;2025&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;177,997&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;42,868&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;2026&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;63,644&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;55,715&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Total undiscounted lease payments&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;1,019,140&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;173,602&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Present value discount&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(90,223&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;(15,740&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;)&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Total lease liability&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;928,917&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;157,862&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;
</occ:LesseeLeaseLiabilityMaturityTableTextBlock>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths
      contextRef="i_2023-01-31"
      decimals="0"
      id="c473"
      unitRef="USD">329201</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths>
    <us-gaap:FinanceLeaseLiabilityPaymentsDueNextTwelveMonths
      contextRef="i_2023-01-31"
      decimals="0"
      id="c474"
      unitRef="USD">32151</us-gaap:FinanceLeaseLiabilityPaymentsDueNextTwelveMonths>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo
      contextRef="i_2023-01-31"
      decimals="0"
      id="c475"
      unitRef="USD">448298</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearTwo>
    <us-gaap:FinanceLeaseLiabilityPaymentsDueYearTwo
      contextRef="i_2023-01-31"
      decimals="0"
      id="c476"
      unitRef="USD">42868</us-gaap:FinanceLeaseLiabilityPaymentsDueYearTwo>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree
      contextRef="i_2023-01-31"
      decimals="0"
      id="c477"
      unitRef="USD">177997</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearThree>
    <us-gaap:FinanceLeaseLiabilityPaymentsDueYearThree
      contextRef="i_2023-01-31"
      decimals="0"
      id="c478"
      unitRef="USD">42868</us-gaap:FinanceLeaseLiabilityPaymentsDueYearThree>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour
      contextRef="i_2023-01-31"
      decimals="0"
      id="c479"
      unitRef="USD">63644</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueYearFour>
    <us-gaap:FinanceLeaseLiabilityPaymentsDueYearFour
      contextRef="i_2023-01-31"
      decimals="0"
      id="c480"
      unitRef="USD">55715</us-gaap:FinanceLeaseLiabilityPaymentsDueYearFour>
    <us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue
      contextRef="i_2023-01-31"
      decimals="0"
      id="c481"
      unitRef="USD">1019140</us-gaap:LesseeOperatingLeaseLiabilityPaymentsDue>
    <us-gaap:FinanceLeaseLiabilityPaymentsDue
      contextRef="i_2023-01-31"
      decimals="0"
      id="c482"
      unitRef="USD">173602</us-gaap:FinanceLeaseLiabilityPaymentsDue>
    <us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount
      contextRef="i_2023-01-31"
      decimals="0"
      id="c483"
      unitRef="USD">90223</us-gaap:LesseeOperatingLeaseLiabilityUndiscountedExcessAmount>
    <us-gaap:FinanceLeaseLiabilityUndiscountedExcessAmount
      contextRef="i_2023-01-31"
      decimals="0"
      id="c484"
      unitRef="USD">15740</us-gaap:FinanceLeaseLiabilityUndiscountedExcessAmount>
    <us-gaap:OperatingLeaseLiability
      contextRef="i_2023-01-31"
      decimals="0"
      id="c485"
      unitRef="USD">928917</us-gaap:OperatingLeaseLiability>
    <us-gaap:FinanceLeaseLiability
      contextRef="i_2023-01-31"
      decimals="0"
      id="c486"
      unitRef="USD">157862</us-gaap:FinanceLeaseLiability>
    <us-gaap:FairValueDisclosuresTextBlock contextRef="d_2022-11-01_2023-01-31" id="c487">
&lt;table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr style="vertical-align: top;"&gt;
			&lt;td style="width: 27pt;"&gt;
			&lt;p style="margin: 0pt; text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;(8)&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: auto;"&gt;
			&lt;p style="margin: 0pt; text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;Fair Value Measurements&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;"&gt;The carrying amounts reported in the condensed consolidated balance sheets as of January 31, 2023 and October 31, 2022 for cash, trade accounts receivable, other receivables, current installments of long-term debt, accounts payable and accrued expenses, and accrued compensation and payroll taxes approximate fair value because of the short maturity of these instruments. The carrying values of the Company&#x2019;s note payable, revolver &#x2013; noncurrent, and long-term debt, excluding current installments, approximate fair value based on long-term debt issues available to the Company as of January 31, 2023 and October 31, 2022. Fair value is defined as the amount that would be received to sell an asset or paid to transfer a liability in an orderly transaction between market participants at the measurement date.&lt;/p&gt;
</us-gaap:FairValueDisclosuresTextBlock>
    <us-gaap:EarningsPerShareTextBlock contextRef="d_2022-11-01_2023-01-31" id="c497">
&lt;table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr style="vertical-align: top;"&gt;
			&lt;td style="width: 27pt;"&gt;
			&lt;p style="margin: 0pt; text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;a href="#" id="notenine" title="notenine"/&gt;&lt;b&gt;(9)&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: auto;"&gt;
			&lt;p style="margin: 0pt; text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;Net Income (Loss) Per Share&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;"&gt;Basic net income (loss) per share excludes dilution and is computed by dividing net income (loss) available to common shareholders by the weighted-average number of common shares outstanding for the period. Diluted net income (loss) per share reflects the potential dilution that could occur if securities or other contracts to issue common stock were exercised or converted into common stock or resulted in the issuance of common stock that then shared in the net income (loss) of the Company.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;"&gt;The following is a reconciliation of the numerators and denominators of the net income (loss) per share computations for the periods presented:&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;


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

		&lt;tbody&gt;&lt;tr style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;Three months ended&lt;/b&gt; &lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;January 31,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;2023&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;2022&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; width: 62%;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Net income (loss) (numerator)&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;809,984&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;(935,793&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Shares (denominator)&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;7,893,194&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;7,511,190&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Basic and diluted net income (loss) per share&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;0.10&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;(0.12&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;)&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;


&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;"&gt;Weighted average unvested shares for the three months ended January 31, 2022 totaling 363,450, while issued and outstanding, were not included in the computation of basic and diluted net loss per share for the three months ended January 31, 2022 (because to include such shares would have been antidilutive, or in other words, to do so would have reduced the net loss per share for that period).&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;



&lt;p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"&gt;&#160;&lt;/p&gt;
</us-gaap:EarningsPerShareTextBlock>
    <us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock contextRef="d_2022-11-01_2023-01-31" id="c512">
&lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; margin-left: 27pt; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;Three months ended&lt;/b&gt; &lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;January 31,&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;2023&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;2022&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; width: 62%;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Net income (loss) (numerator)&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;809,984&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;(935,793&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;)&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Shares (denominator)&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;7,893,194&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;7,511,190&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Basic and diluted net income (loss) per share&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;0.10&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;(0.12&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"&gt;)&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;
</us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock>
    <us-gaap:NetIncomeLoss
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c514"
      unitRef="USD">809984</us-gaap:NetIncomeLoss>
    <us-gaap:NetIncomeLoss
      contextRef="d_2021-11-01_2022-01-31"
      decimals="0"
      id="c515"
      unitRef="USD">-935793</us-gaap:NetIncomeLoss>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="d_2022-11-01_2023-01-31"
      decimals="INF"
      id="c516"
      unitRef="Share">7893194</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:WeightedAverageNumberOfSharesOutstandingBasic
      contextRef="d_2021-11-01_2022-01-31"
      decimals="INF"
      id="c517"
      unitRef="Share">7511190</us-gaap:WeightedAverageNumberOfSharesOutstandingBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="d_2022-11-01_2023-01-31"
      decimals="INF"
      id="c518"
      unitRef="USDPerShare">0.10</us-gaap:EarningsPerShareBasic>
    <us-gaap:EarningsPerShareBasic
      contextRef="d_2021-11-01_2022-01-31"
      decimals="INF"
      id="c519"
      unitRef="USDPerShare">-0.12</us-gaap:EarningsPerShareBasic>
    <us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
      contextRef="d_2021-11-01_2022-01-31"
      decimals="INF"
      id="c508"
      unitRef="Share">363450</us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount>
    <us-gaap:ConcentrationRiskDisclosureTextBlock contextRef="d_2022-11-01_2023-01-31" id="c520">
&lt;table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr style="vertical-align: top;"&gt;
			&lt;td style="width: 27pt;"&gt;
			&lt;p style="margin: 0pt; text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;(10)&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: auto;"&gt;
			&lt;p style="margin: 0pt; text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;Segment Information and Business and Credit Concentrations&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;"&gt;The Company provides credit, in the normal course of business, to various commercial enterprises, governmental entities and not&#x2011;for&#x2011;profit organizations. Concentration of credit risk with respect to trade receivables is normally limited due to the Company&#x2019;s large number of customers. The Company also manages exposure to credit risk through credit approvals, credit limits and monitoring procedures. Management believes that credit risks as of January 31, 2023 have been adequately provided for in the condensed consolidated financial statements. The Company includes all entities under common ownership for the purpose of calculating business concentrations.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;"&gt;For the three months ended January 31, 2023 and 2022, 14.8% and 17.2%, respectively, of consolidated net sales were attributable to &lt;span style="-sec-ix-hidden:c524"&gt;&lt;span style="-sec-ix-hidden:c525"&gt;one&lt;/span&gt;&lt;/span&gt; national distributor customer.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;"&gt;The Company has a single reportable segment for purposes of segment reporting.&lt;/p&gt;
</us-gaap:ConcentrationRiskDisclosureTextBlock>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="d_2022-11-01_2023-01-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-CustomerOneMember"
      decimals="3"
      id="c522"
      unitRef="Pure">0.148</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:ConcentrationRiskPercentage1
      contextRef="d_2021-11-01_2022-01-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-CustomerOneMember"
      decimals="3"
      id="c523"
      unitRef="Pure">0.172</us-gaap:ConcentrationRiskPercentage1>
    <us-gaap:RevenueFromContractWithCustomerTextBlock contextRef="d_2022-11-01_2023-01-31" id="c526">
&lt;table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr style="vertical-align: top;"&gt;
			&lt;td style="width: 27pt;"&gt;
			&lt;p style="margin: 0pt; text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;(11)&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: auto;"&gt;
			&lt;p style="margin: 0pt; text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;Revenue Recognition&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 27pt; text-align: justify;"&gt;Revenues consist of product sales that are recognized at a specific point in time under the core principle of recognizing revenue when control transfers to the customer.&#160;&#160;The Company considers customer purchase orders, governed by master sales agreements or the Company&#x2019;s standard terms and conditions, to be the contract with the customer. &#160;For each contract, the promise to transfer the control of the products, each of which is individually distinct, is considered to be the identified performance obligation. The Company evaluates each customer&#x2019;s credit risk when determining whether to accept a contract.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 27pt; text-align: justify;"&gt;In determining transaction prices, the Company evaluates whether fixed order prices are subject to adjustment to determine the net consideration to which the Company expects to be entitled. Contracts do not include financing components, as payment terms are generally due 30 to 90 days after shipment. Taxes assessed by governmental authorities and collected from the customer including, but not limited to, sales and use taxes and value-added taxes, are not included in the transaction price and are not included in net sales.&#160;&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 27pt; text-align: justify;"&gt;The Company recognizes revenue at the point in time when products are shipped or delivered from its manufacturing facility to its customer, in accordance with the agreed upon shipping terms.&#160;&#160;Since the Company typically invoices the customer at the same time that performance obligations are satisfied, no contract assets are recognized. The Company&#x2019;s contract liability represents advance consideration received from customers prior to transfer of the product.&#160;&#160;This liability was&#160;$59,313 as of January 31, 2023 and $317,310 as of October 31, 2022.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 27pt; text-align: justify;"&gt;Sales to certain customers are made pursuant to agreements that provide price adjustments and limited return rights with respect to the Company&#x2019;s products.&#160;&#160;The Company maintains a reserve for estimated future price adjustment claims, rebates and returns as a refund liability. The Company&#x2019;s refund liability was $257,749 as of January 31, 2023 and&#160;$233,494 as of October 31, 2022.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 27pt; text-align: justify;"&gt;The Company offers standard product warranty coverage which provides assurance that its products will conform to contractually agreed-upon specifications for a limited period from the date of shipment. Separately-priced warranty coverage is not offered. The warranty claim is generally limited to a credit equal to the purchase price or a promise to repair or replace the product for a specified period of time at no additional charge.&#160;&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;



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

&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 27pt; text-align: justify;"&gt;The Company accounts for shipping and handling activities related to contracts with customers as a cost to fulfill its promise to transfer control of the related product.&#160;&#160;Shipping and handling costs are included in selling, general and administrative expenses in the accompanying Condensed Consolidated Statements of Operations.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 27pt; text-align: justify;"&gt;The Company incurs sales commissions to acquire customer contracts that are directly attributable to the contracts.&#160;&#160;The commissions are expensed as selling expenses during the period that the related products are transferred to customers.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 27pt; text-align: justify;"&gt;&lt;i&gt;Disaggregation of Revenue&lt;/i&gt;&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 27pt; text-align: justify;"&gt;The following table presents net sales attributable to the United States and all other countries in total for the three months ended January 31, 2023 and 2022:&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;


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

		&lt;tbody&gt;&lt;tr style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;Three months ended&lt;/b&gt;&lt;/b&gt; &lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;January 31,&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;2023&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;2022&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; width: 62%;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;United States&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;14,578,085&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;12,144,379&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Outside the United States&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;3,705,590&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;2,295,916&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"&gt;Total net sales&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;18,283,675&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;14,440,295&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;


&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;
</us-gaap:RevenueFromContractWithCustomerTextBlock>
    <us-gaap:ContractWithCustomerLiability
      contextRef="i_2023-01-31"
      decimals="0"
      id="c528"
      unitRef="USD">59313</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerLiability
      contextRef="i_2022-10-31"
      decimals="0"
      id="c529"
      unitRef="USD">317310</us-gaap:ContractWithCustomerLiability>
    <us-gaap:ContractWithCustomerRefundLiability
      contextRef="i_2023-01-31"
      decimals="0"
      id="c530"
      unitRef="USD">257749</us-gaap:ContractWithCustomerRefundLiability>
    <us-gaap:ContractWithCustomerRefundLiability
      contextRef="i_2022-10-31"
      decimals="0"
      id="c531"
      unitRef="USD">233494</us-gaap:ContractWithCustomerRefundLiability>
    <us-gaap:RevenueFromExternalCustomersByGeographicAreasTableTextBlock contextRef="d_2022-11-01_2023-01-31" id="c538">
&lt;table border="0" cellpadding="0" cellspacing="0" class="finTable" style="margin-right: 20%; margin-left: 27pt; width: 80%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;Three months ended&lt;/b&gt;&lt;/b&gt; &lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="6" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;January 31,&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom;"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;2023&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td colspan="2" style="text-align: center; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;
			&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"&gt;&lt;b&gt;&lt;b&gt;&lt;b&gt;2022&lt;/b&gt;&lt;/b&gt;&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt; width: 62%;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;United States&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;14,578,085&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;$&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;12,144,379&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin: 0pt;"&gt;Outside the United States&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;3,705,590&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);"&gt;2,295,916&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;
		&lt;tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"&gt;
			&lt;td style="font-family: Times New Roman; font-size: 10pt;"&gt;
			&lt;p style="font-family: &amp;quot;Times New Roman&amp;quot;; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 36pt;"&gt;Total net sales&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;18,283,675&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"&gt;&#160;&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;$&lt;/td&gt;
			&lt;td style="width: 16%; text-align: right; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);"&gt;14,440,295&lt;/td&gt;
			&lt;td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"&gt;&#160;&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;
</us-gaap:RevenueFromExternalCustomersByGeographicAreasTableTextBlock>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2022-11-01_2023-01-31_StatementGeographicalAxis-US"
      decimals="0"
      id="c540"
      unitRef="USD">14578085</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2021-11-01_2022-10-31_StatementGeographicalAxis-US"
      decimals="0"
      id="c541"
      unitRef="USD">12144379</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2022-11-01_2023-01-31_StatementGeographicalAxis-NonUsMember"
      decimals="0"
      id="c542"
      unitRef="USD">3705590</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2021-11-01_2022-10-31_StatementGeographicalAxis-NonUsMember"
      decimals="0"
      id="c543"
      unitRef="USD">2295916</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2022-11-01_2023-01-31"
      decimals="0"
      id="c544"
      unitRef="USD">18283675</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax
      contextRef="d_2021-11-01_2022-10-31"
      decimals="0"
      id="c545"
      unitRef="USD">14440295</us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax>
    <us-gaap:CommitmentsAndContingenciesDisclosureTextBlock contextRef="d_2022-11-01_2023-01-31" id="c546">
&lt;table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr style="vertical-align: top;"&gt;
			&lt;td style="width: 27pt;"&gt;
			&lt;p style="margin: 0pt; text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;(12)&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: auto;"&gt;
			&lt;p style="margin: 0pt; text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;Contingencies&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;"&gt;From time to time, the Company is involved in various claims, legal actions and regulatory reviews arising in the ordinary course of business. In the opinion of management, the ultimate disposition of these matters will not have a material adverse effect on the Company&#x2019;s financial position, results of operations or liquidity.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;"&gt;The Company believes continuing and lingering direct and indirect impacts of the COVID-19 pandemic and certain macroeconomic trends as the COVID-19 pandemic has become more endemic-like in the U.S. have created challenges that have affected production volumes and sales. While improving, the Company has continued to experience certain challenges recruiting additional personnel (particularly, production personnel), as well as certain raw material supply chain challenges, which can impact sales, shipped product volumes, pricing and lead times for certain products. The Company believes it has taken steps to successfully mitigate (to a certain extent) the impacts of these challenges; however, at this time the Company believes these challenges may continue.&lt;/p&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt 0pt 0pt 27pt;"&gt;The extent to which any direct and indirect impacts of the COVID-19 pandemic and certain related macroeconomic trends may continue to affect the Company in the future will depend on ongoing developments, which are highly uncertain and cannot be reasonably predicted, including, but not limited to, the duration and severity of any future outbreaks; the timing and extent of any imposition or easing of restrictions on businesses and individuals in various markets; any impact on product demand in certain of the Company&#x2019;s markets; the potential for any resurgence of the virus (including its variant strains); any supply chain and labor constraints impacting production volumes and costs directly or indirectly resulting from the pandemic and after effects of the pandemic; as well as a variety of other unknowable factors.&lt;/p&gt;
</us-gaap:CommitmentsAndContingenciesDisclosureTextBlock>
    <us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock contextRef="d_2022-11-01_2023-01-31" id="c548">
&lt;table border="0" cellpadding="0" cellspacing="0" style="width: 100%; text-indent: 0px;"&gt;

		&lt;tbody&gt;&lt;tr style="vertical-align: top;"&gt;
			&lt;td style="width: 27pt;"&gt;
			&lt;p style="margin: 0pt; text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;(13) &lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
			&lt;td style="width: auto;"&gt;
			&lt;p style="margin: 0pt; text-align: left; font-family: &amp;quot;Times New Roman&amp;quot;, Times, serif; font-size: 10pt;"&gt;&lt;b&gt;New Accounting Standards Not Yet Adopted&lt;/b&gt;&lt;/p&gt;
			&lt;/td&gt;
		&lt;/tr&gt;

&lt;/tbody&gt;&lt;/table&gt;

&lt;p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"&gt;&#160;&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt 0pt 0pt 28pt;"&gt;There are no new accounting standards issued, but not yet adopted by the Company, which are expected to materially impact the Company&#x2019;s financial position, operating results or financial statement disclosures.&lt;/p&gt;

&lt;p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt 0pt 0pt 28pt;"&gt;&#160;&lt;/p&gt;

&lt;div&gt;&#160;&lt;/div&gt;



&lt;p style="font-family: 'Times New Roman', Times, serif; font-size: 10pt; margin: 0pt; text-align: left"&gt;&#160;&lt;/p&gt;
</us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock>
</xbrl>
</XML>
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>EXCEL
<SEQUENCE>54
<FILENAME>Financial_Report.xlsx
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 Financial_Report.xlsx
M4$L#!!0    ( /%!;E8'04UB@0   +$    0    9&]C4')O<',O87!P+GAM
M;$V./0L",1!$_\IQO;=!P4)B0-!2L+(/>QLOD&1#LD)^OCG!CVX>;QA&WPIG
M*N*I#BV&5(_C(I(/ !47BK9.7:=N')=HI6-Y #OGD<Z,STA)8*O4'J@)I9GF
M3?X.CD:?<@X>K7A.YNJQ<&4GPZ4A!0W_<FW>J=0U[R;UEA_6\#MI7E!+ P04
M    " #Q06Y6!2"B .\    K @  $0   &1O8U!R;W!S+V-O<F4N>&ULS9)1
M2\,P$,>_BN2]O:95P=#E9<,G!<&!XEM(;EM8DX;DI-VW-ZU;A^@'\#%W__SN
M=W"M#D+W$5]B'S"2Q70SNLXGH<.*'8B" $CZ@$ZE,B=\;N[ZZ!3E9]Q#4/JH
M]@AU5=V#0U)&D8()6(2%R&1KM- 1%?7QC#=ZP8?/V,TPHP$[=.@I 2\Y,#E-
M#*>Q:^$*F&"$T:7O IJ%.%?_Q,X=8.?DF.R2&H:A')HYEW?@\/[\]#JO6UB?
M2'F-^5>R@DX!5^PR^:U9;[:/3-95W1154_#;+:\%OQ/\X6-R_>%W%7:]L3O[
MCXTO@K*%7W<AOP!02P,$%     @ \4%N5IE<G",0!@  G"<  !,   !X;"]T
M:&5M92]T:&5M93$N>&UL[5I;<]HX%'[OK]!X9_9M"\8V@;:T$W-I=MNTF83M
M3A^%$5B-;'EDD81_OT<V$,N6#>V23;J;/ 0LZ?O.14?GZ#AY\^XN8NB&B)3R
M>&#9+]O6N[<OWN!7,B0103 9IZ_PP JE3%ZU6FD PSA]R1,2P]R"BPA+>!3+
MUES@6QHO(];JM-O=5H1I;*$81V1@?5XL:$#05%%:;U\@M.4?,_@5RU2-9:,!
M$U=!)KF(M/+Y;,7\VMX^9<_I.ATR@6XP&U@@?\YOI^1.6HCA5,+$P&IG/U9K
MQ]'22(""R7V4!;I)]J/3%0@R#3LZG5C.=GSVQ.V?C,K:=#1M&N#C\7@XMLO2
MBW <!.!1NY["G?1LOZ1!";2C:=!DV/;:KI&FJHU33]/W?=_KFVB<"HU;3]-K
M=]W3CHG&K=!X#;[Q3X?#KHG&J]!TZVDF)_VN:Z3I%FA"1N/K>A(5M>5 TR
M6'!VULS2 Y9>*?IUE!K9';O=05SP6.XYB1'^QL4$UFG2&98T1G*=D 4. #?$
MT4Q0?*]!MHK@PI+27)#6SRFU4!H(FLB!]4>"(<7<K_WUE[O)I#-ZG7TZSFN4
M?VFK :?MNYO/D_QSZ.2?IY/734+.<+PL"?'[(UMAAR=N.Q-R.AQG0GS/]O:1
MI24RS^_Y"NM./&<?5I:P7<_/Y)Z,<B.[W?98??9/1VXCUZG LR+7E$8D19_(
M+;KD$3BU20TR$S\(G8:8:E < J0),9:AAOBTQJP1X!-]M[X(R-^-B/>K;YH]
M5Z%82=J$^!!&&N*<<^9ST6S[!Z5&T?95O-RCEU@5 9<8WS2J-2S%UGB5P/&M
MG#P=$Q+-E L&08:7)"82J3E^34@3_BNEVOZ<TT#PE"\D^DJ1CVFS(Z=T)LWH
M,QK!1J\;=8=HTCQZ_@7YG#4*')$;'0)G&[-&(81IN_ >KR2.FJW"$2M"/F(9
M-AIRM1:!MG&IA&!:$L;1>$[2M!'\6:PUDSY@R.S-D77.UI$.$9)>-T(^8LZ+
MD!&_'H8X2IKMHG%8!/V>7L-)P>B"RV;]N'Z&U3-L+([W1]072N0/)J<_Z3(T
M!Z.:60F]A%9JGZJ'-#ZH'C(*!?&Y'C[E>G@*-Y;&O%"N@GL!_]':-\*K^(+
M.7\N?<^E[[GT/:'2MS<C?6?!TXM;WD9N6\3[KC':US0N*&-7<LW(QU2ODRG8
M.9_ [/UH/I[Q[?K9)(2OFEDM(Q:02X&S022X_(O*\"K$">AD6R4)RU3393>*
M$IY"&V[I4_5*E=?EK[DHN#Q;Y.FOH70^+,_Y/%_GM,T+,T.W<DOJMI2^M28X
M2O2QS'!.'LL,.V<\DAVV=Z =-?OV77;D(Z4P4Y=#N!I"O@-MNIW<.CB>F)&Y
M"M-2D&_#^>G%>!KB.=D$N7V85VWGV-'1^^?!4;"C[SR6'<>(\J(A[J&&F,_#
M0X=Y>U^89Y7&4#04;6RL)"Q&MV"XU_$L%.!D8"V@!X.O40+R4E5@,5O& RN0
MHGQ,C$7H<.>77%_CT9+CVZ9EM6ZO*7<9;2)2.<)IF!-GJ\K>9;'!51W/55OR
ML+YJ/;053L_^6:W(GPP13A8+$DACE!>F2J+S&5.^YRM)Q%4XOT4SMA*7&+SC
MYL=Q3E.X$G:V#P(RN;LYJ7IE,6>F\M\M# DL6XA9$N)-7>W5YYN<KGHB=OJ7
M=\%@\OUPR4</Y3OG7_1=0ZY^]MWC^FZ3.TA,G'G%$0%T10(CE1P&%A<RY%#N
MDI &$P'-E,E$\ *"9*8<@)CZ"[WR#+DI%<ZM/CE_12R#ADY>TB42%(JP# 4A
M%W+C[^^3:G>,U_HL@6V$5#)DU1?*0XG!/3-R0]A4)?.NVB8+A=OB5,V[&KXF
M8$O#>FZ=+2?_VU[4/;07/4;SHYG@'K.'<YMZN,)%K/]8UA[Y,M\Y<-LZW@->
MYA,L0Z1^P7V*BH 1JV*^NJ]/^26<.[1[\8$@F_S6VZ3VW> ,?-2K6J5D*Q$_
M2P=\'Y(&8XQ;]#1?CQ1BK::QK<;:,0QY@%CS#*%F.-^'19H:,]6+K#F-"F]!
MU4#E/]O4#6CV#30<D05>,9FV-J/D3@H\W/[O#;#"Q([A[8N_ 5!+ P04
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
MPCR@[\\Y5]L3\X)BIWOX+U!+ P04    " #Q06Y6SA&I.$ &  #2&   &
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
M,L 4JCC %!TCU_D9X$X:/%'DS00/?539 !Q?2FD>._9841TCI_\ 4$L#!!0
M   ( /%!;E:^\2N15@0  (0.   8    >&PO=V]R:W-H965T<R]S:&5E=#0N
M>&ULK9?;;N,V$$!_A5"+(@'BB!==4]O QMMM4V"[08*TSXQ%V\1*HDO2<=*O
M+TG9LB-12A_Z8HGRS/#,<,CA3/="?E<;QC1XK<I:S8*-UMN;,%3+#:NHNA9;
M5IM_5D)65)NA7(=J*QDMG%)5AAC")*PHKX/YU'V[E_.IV.F2U^Q> K6K*BK?
M;EDI]K, !<</#WR]T?9#.)]NZ9H],OVTO9=F%+96"EZQ6G%1 \E6L^ 3NEF@
MU"HXB3\YVZNS=V!=>1;BNQW<%;, 6B)6LJ6V)JAYO+ %*TMKR7#\?3 :M'-:
MQ?/WH_4OSGGCS#-5;"'*OWBA-[,@"T#!5G17Z@>Q_XT='(JMO:4HE?L%^T8V
MA0%8[I06U4'9$%2\;I[T]1"(,P5CQZ^ #PJXJQ -*)"# G&.-F3.K<]4T_E4
MBCV05MI8LR\N-D[;>,-KNXR/6II_N='3\X6H"[,HK #F38F2%U2;P:,V#[-:
M6@&Q M^V3%(;=04NGFJZ*[B1N003\/3X&5S\>#D-M4&Q!L/E8=K;9EH\,"T!
M7T6M-PK\8J8OWNN'QH76#WSTXQ:/&OR=UM> H"N (28>GL5_5\<C.*0-*W'V
MH@%[?Y@-J&C)E"\TC6KB5.TV>YFC#&<D2>-I^'+.[!&,H@CB_"3XCBYJZ:)1
MNH50VJ[K6HA" ;/JA0^SL1&?SX[2!$=)TL'T"$*2&U+BQXQ;S'@4\U<IE );
M*59<^P#CWKQ)C!&&>8>O+Q?!*,YB[,=+6KQD%._1G#V\7E^!-:O-_B@!K0M
M"[-)N=)VO[PPP%ZW=G=YTR#I8<51'/?#VY>+T@RB//?CIRU^.HK_(-YHJ=^.
MB%>@9MXHIYXH9UU&CU >9W[ K 7,1@$_54)J_H\[>&RV\EK3>LV?2P:H4DQ[
M@YKU<Y%@C#JX'BF3-@.[*F]Y\U'>NWHI*@8N2I.UEV E105$>W#Z6'//OHGB
MG'2#VY>;I#&)(/3S(G@Z^Z%3)0/$W_2&21/7AON0")<N$VZ\9SH<"X"]<=RH
M+5VR66"N%(K)%Q;,?_H!)?!GWXG\?UE[[_Q9X4,?+)=FQJ[^< ,<[+R+/TYA
M@DEGG7R"*,YP,K10^,2*1UG=0@T#XO[N2Q'I5A./V 0AD@VD/3K5.C1>[)HT
M^C",Q!-&2*(LZW)Z!%&2)]$0Z*GLH?&Z]WZ'/C-S"V;']-?TU7],HWYYRR(<
M13WLOMPDQP0.8I_*(!JO@W<MX3'(7LY^F2.F6$==S+X8PFDT<%:C4S%$X]70
MWGCX>7R]C$GO1I/!/,]ZD'VY24[B-!^X4:!3T4/C5:^'"<P1#=2&2G8#;JGB
M2U?&"U[N[#WX@M>@$&5)I3H)^EUKYDW/D.%UM^YXA"9&JGL1"<_N\Q63:]?F
M*+ 4NUHW5^+V:]M*?7(-1.?[K6VQ7)]P,M/T9U^I7'-SGR_9RIB$UZE)"-FT
M/,U BZWK&IZ%-CV(>]V8-I%)*V#^7PFACP,[0=MXSO\%4$L#!!0    ( /%!
M;E;G*WMN, 0  "H2   8    >&PO=V]R:W-H965T<R]S:&5E=#4N>&ULM5A=
M;]LV%/TKA#9L"=!$(JG/S#:PV"W: =V">-D>ACTP$FT+D427I./VWY>495FB
M9#4.G!=+%.\]NN?PZO+2HRWC3V)%J01?\ZP08VLEY?K&MD6\HCD1UVQ-"S6S
M8#PG4@WYTA9K3DE2.N69C1S'MW.2%M9D5#Z[XY,1V\@L+>@=!V*3YX1_NZ49
MVXXM:.T?W*?+E=0/[,EH399T3N7#^HZKD5VC)&E."Y&R G"Z&%N_PYL9]+1#
M:?%/2K>B<0\TE4?&GO3@4S*V'!T1S6@L-011EV<ZI5FFD50<7RI0JWZG=FS>
M[]$_E.05F4<BZ)1E_Z:)7(VMT ()79!-)N_9]B.M")4!QBP3Y2_85K:.!>*-
MD"ROG%4$>5KLKN1K)43# :$C#JAR0*9#<,0!5P[8<(#XB(-;.;BE,CLJI0XS
M(LEDQ-D6<&VMT/1-*6;IK>BGA5[WN>1J-E5^<C)E1:)6D29 W0F6I0F1:C"7
MZJ*65PK %F"^(IRN6)90+GX%[[]L4OD-7#P49).DROH27(&'^0Q<_'PYLJ4*
M2D/;<17 [2X =#2 /%?K/Y<L?@+_?:;Y(^7_]\!,AV'NJ51)KB)_3WB1%DLQ
MA#4;QOJ;29*UW6PE:ZTMJK5%)8Y[!.>69*2(J0!$@K]BR50T ,-W #D(@8NT
M $+K*BZK^>O]).Q3<?<JKWR5_IB?)T$8!6X0C.SGIDR#(>DJ<B/6)*9C2Y4)
M0?DSM2:__ 1]Y[<^G<X$UE(/U^KAUZOW$L5V\'Y#,>AB'/AN9$C6-0Q"/\2.
MV[:;=>T00HX7>;@V;#%U:Z;N(-/R\[K2U2L!,<M521=$%\5WH%"%OY$H?2S=
M3EY<N2HM3(Z#$9R:%F<":XGEU6)YKQ>K3R"OFP91Z&!#'Z\CHV.L?M>BC=-B
MX]=L_$$V?ZH%3@O%@_:%[G="-X*:^MW5C[ 71 :]V8_M6N$'=?C!B[_1/TBQ
M49W#_I/$9H53\_7WBOK8!CT5SHVB*#0X#X9T:BJ?":RE7EBK%[Y>O9<H%O95
M."]P/61(%G:D]2.,/ B--.G:(8C"*/*/Y$E4,XW>9"?L91WU[8081D:YG@Z&
M=&J>G FLI1YT#DV:<[:]L%>S"K^=*CX./<<S5*LL6_)Z*@N@65)Z#!&"7A3
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
M3WS]R-5_T1_H9Z' \H*A+QPD?M3V) 3])%FS=/@LE5FA.P;K!] RE-DK<EK
MB^_-F_MGTG9JS8[[J7_S_$\3*#WK=OBYM)U:H6LCJ']'?*%DSGG1VJ"2$ ;M
M<NT'I/A.ECNNG$9P;'D'@=T4[:\G')(X#C.2CB9$Q_[T.^Q_Q$1O@)X,3V-P
M!JE\O&)OL;M$PY"D-.AW +.C(\PU5T_UR:Y&]=9#<PIX>'HX/;ZISTQ[SV_Q
MY5US!MRI:8ZD/S&;V!JH=@DJ@_<)V%0UI[S-C9&;^J#T41HCU_7EBK."*RL
M[Y<2C-3>V \<SMKG_P=02P,$%     @ \4%N5JJE+H\_!@  XPX  !@   !X
M;"]W;W)K<VAE971S+W-H965T-RYX;6RM5VUOVS80_BN$"Q0MD/HMZ5M>#"3N
MNF5;EZQINP'#/M#2R6)#D2I)V?%^_9XC)=G-TJPK]B6Q2-[=<W?/W9'':^NN
M?4D4Q$VEC3\9E"'4AZ.1STJJI!_:F@QV"NLJ&?#IEB-?.Y)Y%*KT:#H>/QM5
M4IG![#BN7;K9L6V"5H8NG?!-54FW.2-MUR>#R:!;>*N69>"%T>RXEDNZHO"^
MOG3X&O5:<E61\<H:X:@X&9Q.#L\.^'P\\$'1VN_\%NS)PMIK_CC/3P9C!D2:
MLL :)/ZM:$Y:LR+ ^-3J'/0F67#W=Z?]=?0=OBRDI[G5OZD\E">#%P.14R$;
M'=[:]0_4^O.4]656^_A7K-NSXX'(&A]LU0H#0:5,^B]OVCA\C<"T%9A&W,E0
M1/E*!CD[=G8M')^&-OX178W2 *<,)^4J..PJR(79+S:0F(@GXGLRY*0^'@5H
MY;U1UFHX2QJF7]"P+]Y8$THOOC,YY9_+CX"FAS3M()U-[U7XHS1#L3_9$]/Q
M=/\>??N]B_M1W_X]+GH1K'BMC#29DEI<!1D(U K^+G^3NH.[U7&5'/I:9G0R
M0!EX<BL:S!X^F#P;']T#]J '>W"?]MF%6TJC_I),V3TQM\9;K7*9&&QR<<DF
M34@+MKC3)_%*^4Q;WS@2?[RCFR#.M,VN_[S+U_O1M*00[TI"_62VJJ79*+,4
MC9%-K@+E(K-(N_'I5PL6'T6/RV]Q >]%'52&U;E<:()_KK9NZYW"(=\LO,J5
M= I9>P1^QP)>D=[LB0 <#Q^\F$['1_,$)GY-CH1UW<;%?(YL/#\X:K<>BU*N
M2"R(C$#":ND 3YGHC\L!DE!RH13OAU=#L4P.ZPUO4\V>\+G&!/:Z=@H^U1K
MT ZA))!3U8ZORJ0VV?G#>)7QP36Q!R46XH28C!G=^.71K_'<6UHV.HE=M1N_
M#\5I1 C#K>L;D5MA;(#*3#<Y4J(UQS19^=RRB:1W]*E1[.]B\PW^<;XUH3_<
ME<RA.#?1LJV5:<E828-&SMM[$1OP($ 0D_E'M+)$ J:)RHE1&<K(>\R":$Z*
M0BHGZEV&;U/7^IP/02%BR@ O3J+Y)K ,)92.2%2I'1&W(X%FTK"!KI\(I#_&
ML+.M$ ME<I"22=:%\[;F A4%/S8D'2MFXQ=9L MR6\T+RF3C*9T';>V:CZ%(
M*H]P -526.RQ0FQ@K9(P#19G 4O6]U8/159*LV3I2F;.$D)F*Y7%6E.)2"#P
M"N!MXW'&75. OARIAJY82*;]2/I]Y]?\XL/YJR>3EP*UDQ/K3'%E6X\638BA
MT:J*I1WL8U1C72-" *02L;1<1&HPJ[$&U<E$XH_-$]/%RNJF(H""?EP64G_P
M.,TZ>A2.=.P62[LB9Y@?<1\\7&&=O0!MD#T0B]M*=)O=D*RR\PEC7\>*7I<J
M*\6:*<D,H;T4QR26HK03PCWAH<0:J578,,Y"[S0B+FWR0; >_YFB0%EIK+9+
M"'&%4%"1.;N: R+(Z2Y$1BYPZ!":CY2U_M>-@T(/?:C+:]1U&O3D&)1:&E6
MCH@%9UCV^?92QY)FCK#VPME*E+AU<+!QC/U(7:>WKJ5;4BN(5@(#+1%EGV33
M5,QBAMJ!8&,=[IY<<I$,?%;FW,_HAK*&DP7G%HW'!/%>U%IR'! 30&VXR[3B
M$."K8FCI- *7/.11E$43^%].B]#M</>"3-M^ !O2,L<JDJ*[=:3;+&UT.#4&
MA.M(@!YK7/7X?RJZ&$O,'*!J3.M=4-2#1&?,>.)P )WRUQA$H OJ'Z,!2M)2
M2[^=V3-Y?N3%J4&3T>CB&&8!<&[U^)^^U$80EUM=9"H>;0LR-84MC-9Z.^=@
M8RU=_N1GW'CY]/EV G1#T:>K[^,]'H]=)-;JMM(4H ()0EMB2N[XR&([H?M'
MK#A-*3:U]5XM>+(4!:5^T*:T;6O#>(WXMIL#9V5[/@TW[N3ML&"" 0$Y<#JD
M<7?7F&W')SLA=SB^.SN[,?.E5,N4ZJ]#''$.&0I"X6*4=VSM\:.&QX&-EOZ#
M2C[O"'+_AO9_).;PKLOM:.?A@<ZQC,\K'O&X4*0W2+_:O^!.T\-E>SP]_]Z@
M5>&J)#05$!T/GS\=@%CQ294^@JWC,V9A ]I4_%GB%4J.#V"_L A-^\$&^G?M
M[&]02P,$%     @ \4%N5F32SRXY!0  ! T  !@   !X;"]W;W)K<VAE971S
M+W-H965T."YX;6R55VUOVS80_KY?<7"+H@4<6Y:=-&T3 [&[8AW0)6BZ[<.P
M#[1TMKA2I$I2EKU?OSM25NS&,;HO-M_N[GGNC=158^Q75R!ZV)1*N^M>X7WU
M=CAT68&E< -3H::=I;&E\#2UJZ&K+(H\")5JF";)Q; 44O>F5V'MSDZO3.V5
MU'AGP=5E*>QVALHTU[U1;[?P6:X*SPO#Z54E5GB/_O?JSM)LV&G)98G:2:/!
MXO*Z=S-Z.YOP^7#@#XF-VQL#,UD8\Y4G'_/K7L* 4&'F68.@OS7.42E61#"^
MM3I[G4D6W!_OM'\(W(G+0CB<&_6GS'UQW;OL08Y+42O_V32_8,OGG/5E1KGP
M"TT\>W'1@ZQVWI2M,"$HI8[_8M/Z84_@,GE"(&T%TH [&@HHWPLOIE?6-&#Y
M-&GC0: :I F<U!R4>V]I5Y*<G_YF/$(*9W#O3?85/NH,-?L)[I30#H3.X=87
M:.&^$!;/V $YS$U)2>$$^_5JZ D&*QMFK<E9-)D^87(,GXSVA8.?=8[YH?R0
MX'<<TAV'67I2X:]"#V \ZD.:I.,3^L:=3\9!W_B$3QQX Q^D%CJ30I%WA$?*
M1>^.\8WJ)L?5<5F]=97(\+I'=>/0KK$W??%L=)&\.P%VTH&=G-(^C7&9A;C<
MB2UCA!MKA5X%O/#7%]QXF"F*[M_'L)_6_C)]]=,/90;,'F4&W#@P2Z#HU%3N
M78#ZP%((#?^(JK)F(ZFZ4-&1RU$_21(J=FXG4J_ L6XRMA92B85"H#8$*V+G
MH:;LL:P+;BLO,PK2/)R8&UL9&Q$<@PXO7SR[3-/D79J,7H>5,!^]>S4X2/)L
MGPIN>!S-8UDILT5T?1!T2CMJ  R(/:*-/MOMPWMIJ?<8ZXA09E9:_DMJI0Z8
M22YGC7G08)3,R04YN"[/V'74>B,1%PRSG"\L:2YC 2$7T",'!R T2*$1#IZ/
MQN?]9#(*J\]'Z:0_&;_I$R)78>B(:OL#O"4;\\2'HD0_ 2L5R&[[D!\QTFW3
M;:0O NXU.L\!)59DVEN91;H<']$(FQ-A"R8DU/[JH(WA06)]*3 L"+V%@CB&
MA,"\'SC24&:R$ES#88/-+JTIP=-MPJCYO_\D#%<O_B'T?#!DYYHR:[$-) Y
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
MVRV-8U0V@,[7DA[[WK 7= ,^_0M02P,$%     @ \4%N5J+:@#Q^ P  *0@
M !D   !X;"]W;W)K<VAE971S+W-H965T,3$N>&ULE59;;]LV%'[WKSA0BR(!
MU$B6Y$M3VT"<KMB&=0N:;'T8]D!+QQ81BE1)JK;WZW=(R8J3N1[V8O%RSG>^
M<Z5G6Z4?38EH85<):>9!:6U]'44F+[%BYDK5*.EFK73%+&WU)C*U1E9XI4I$
M21R/HXIQ&2QF_NQ.+V:JL8)+O--@FJIB>K]$H;;S8!@<#C[S36G=0;28U6R#
M]VA_K^\T[:(>I> 52L.5!(WK>7 SO%YF3MX+_,%Q:X[6X#Q9*?7H-C\5\R!V
MA%!@;AT"H\\WO$4A'!#1^-IA!KU)IWB\/J!_]+Z3+RMF\%:)+[RPY3R8!E#@
MFC7"?E;;'['S9^3P<B6,_X5M*YN1Q;PQ5E6=,NTK+MLOVW5Q.%*8QM]12#J%
MQ/-N#7F6'YAEBYE66]!.FM#<PKOJM8D<ERXI]U;3+2<]N_A56801O(4[K8HF
MM_"%:<VDY6AFD24#3BS*.[!E"Y9\!RR%3TK:TL /LL#BN7Y$Q'IVR8'=,CD+
M^#.35Y .0TCB)#V#E_;>IAXO/>.M :O@(Y=,YIP)N+?,(E69/>EO"Y>=AG,-
M<VUJEN,\H(XPJ+]AL'CS:CB.WY\AF_5DLW/HBQ<9V<,';G*A3*,1_GS G86E
M4/GC7Z=XGT4^S?MB=#GX=Q' C0&U!DI$0SW;YP*8+."WW*H5ZL-A$H(M$6Y5
M53.Y?_-JF@PG[PWU7:X;"C0-$$!C.742%E!WEK8'YW+!>.5R8YF@^]?C41C'
ML;?S>N+7(0T!4Z-O8[$/_14WP&4N&BHW6CA;JJ%40LWV;"70RW@"=(\[FF0&
MS=531#NCW8VGZ%RPI4:$JJUE=+5\.@#.Z2?&PW$XFF0=XW#Z+GM.^ H>2F="
MT!SD<@/6$VR'(?_;E25=YR63&W1._6<L7T30Y:IHM$?^GRY<#QZ\]''S#HZD
M!T[:_22#)1/4-Q17"RO<<"F=/:J/&C57Y#>TJ>H7@U\X6W'!/;U#(AS[(];<
M&'=Z1+Y#&XW"+(W=)\G2P<ND.?:Y,C[9_)3Z1=(FY!(N?#K@<G#[%%[1$=MW
MP<2WN.-4GH1Q.J('U'0:3D=CAYI-PC1[1[!'4:%0/XO'^'D\X-1<B([&=X5Z
MXQ\I [Z4VTG>G_;OX$T[_I_$VT?T$].4%0,"UZ0:7TU& >CV86HW5M7^,5@I
M2T^+7Y;TEJ-V G2_5C0BNXTST/\[6/P#4$L#!!0    ( /%!;E8,EW60QP<
M ! 3   9    >&PO=V]R:W-H965T<R]S:&5E=#$R+GAM;*586V_C-A9^SZ\@
MW+1( (TMR9<X5V"2MM@I,FV02;L/BWV@)=KFCB2Z).7$_WZ_<RC9<NID@/8A
ML22>^^4[1[IZ-O:K6RKEQ4M95.ZZM_1^=3$8N&RI2NGZ9J4JG,R-+:7'K5T,
MW,HJF3-360S2.)X,2JFKWLT5/WNP-U>F]H6NU(,5KBY+:3>WJC#/U[VDUSYX
MU(NEIP>#FZN57*@ORO^^>K"X&VREY+I4E=.F$E;-KWL?DXO;$=$SP1]:/;O.
MM2!/9L9\I9M/^74O)H-4H3)/$B1^UNI.%04)@AE_-C)[6Y7$V+UNI?_,OL.7
MF73JSA3_UKE?7O>F/9&KN:P+_VB>_Z4:?\8D+S.%X__B.=".TI[(:N=-V3##
M@E)7X5>^-''H,$SC-QC2AB%ENX,BMO)'Z>7-E37/PA(UI-$%N\K<,$Y7E)0O
MWN)4@\_?_&J\$A/Q0=R;:O'!*UN*']7,"UGE@LZ<>) ;.2O4U<!#'3$-LD;T
M;1"=OB%Z*#Z;RB^=^*G*5;[//X"96UO3UM;;]%V!O\BJ+X9))-(X';XC;[CU
M?<CRAN_X[H0WXF==R2K3LA!?O/0*->?=(7^#N-%A<=0^%VXE,W7=0W\X9=>J
M=_/#=\DDOGS'V-'6V-%[TF\X/T_;_/SG2;UX<5N8[.M_#YGZOK"3R>G1MQ(N
MGI9*W)ER):N-6$HG,JMR[<5<9KK07H,R,VA.YW6U$&8N))H4(52.8BA8<F%D
M%0GP2L041<!:;*#(Q8F'AA^^FZ9I?/F'M@M=:2D>2<9/0<8]V/D\N3R%&"#'
M:E5P>D#S#Y3]:JQ?BCMI#0+SMDH60,=K4ZS)R;L0@<_20:%XL*;4SAF[X< U
MZ@K6)A=6A3H2)VA1QJ"U*C:1Z)@1!"O;ZNN+6P.[B.+-<+ 6HOB&#T):!2@!
M"1,JF"QN9?4U0BK7L%7,]0OLU!4\08B$)48D<=@_'W\?'(< I[(:/HO9ACDL
M" NM*L >'H+:6R"4 +CZ7:V0-\G9I0L)6EG,#^LW_0[ Y%QOC@2@I6O,@FU7
ML^;?,F]F"'#S,&WKC#E(TQP1-<_(R,511\!1A^^(A-&_].CM4)X<3_IC@&I1
MT'PP5H..3=8 @Y4L3L6J:05=B9*PK-C@$A**(N06]AQ#VS1)(QQD19U3F6R#
M>B)]""BJEW,Q#PKDAM@#=S1,IE&<GHN\5JBLC0A.C\2Q&$:3)([.XB1<3\ZC
M]'QT]*W$GQRG?;#_4[>@^7PR_+MNG25)='8V_(M3T^$XBI-$3,?GT3">'CT9
M:N5BOS1&T6@TCLZ2%%?C=!I-XO3H7CG@36TM:=@S=CA*0)6*X1!Q1'SVZRP2
MZJ5UX"#[,90D,?[.XW!]'D?C>,KHUS9HIY'$9\05T5]I,OS^_DZ<5 #RW)""
M6>T M# 4Q?WE_E'<MO<!.**V\7&VQ1@TR%KG-(<Z<,OZ3(6.M,@0&E'F:TPH
M4&E" ""<J>%(O<+TND ^3A'0[]OND N SX+[N?;PM&+G&Q;0J (50>F764;/
MW!XV_O64<%6L95&KUNA+L2IJL,U.62%ZD<H"HD_TZ6OSQ/"092QNSQA=K9$/
M@&D$*1!SC$*)8_YC4,##/>&5\20=V24L2N)XJP5_U9[K[[ET24L5^9)!91(E
M8U;9Y_1CS=)E77;,WO90:X6K9_\#MI,EOELP&H5%?1TWXCZUO0,3;(T\-IB9
M2XWFF\F"LBO05_00@ E'*VAN43GI$RC/S)J]P^3!7BP>Z1#UH.9S,F&.<20\
M'9 Q^(U0CR%.!=6@7\+G4?\,DKKY_HB1JC.& Q*XFT6?@H5JW?2T;)?=:(<$
M)5I[IC(#I9-^W#7QE=B^^'@0[Z/]L(7H=,92&Q%VN% AGQP5KD".RPDH85:
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
M]/Q^U-Q8M78?7^?*6E6XRY7@R#$-P/N%4K:YH07:K_$W_P%02P,$%     @
M\4%N5L)1U0V7 P  _@<  !D   !X;"]W;W)K<VAE971S+W-H965T,30N>&UL
ME55M;]LV$/Z^7W%0@6(#7,N6T]1(; --NJ ;D#5HNN[#L \GZ6P1H4B-//GE
MW^](R8Y3Q ;VQ::.=\\]]\K9QKHG7Q$Q;&MM_#RIF)NK-/5%137ZH6W(R,W2
MNAI9/MTJ]8TC+*-1K=-L-+I,:U0F6<RB[,$M9K9EK0P]./!M7:/;W9"VFWDR
M3O:"KVI5<1"DBUF#*WHD_K-Y</*5'E!*59/QRAIPM)PG'\=7-Q=!/RI\5[3Q
M1V<(D>36/H6/W\IY,@J$2%/! 0'E;TVWI'4 $AK_]IC)P64P/#[OT>]B[!)+
MCIYNK?Y+E5S-DVD")2VQU?S5;CY3'\_[@%=8[>,O;#K=R64"1>O9UKVQ,*B5
MZ?YQV^?AR& Z.F&0]099Y-TYBBP_(>-BYNP&7- 6M'"(H49K(:=,*,HC.[E5
M8L>+/RP33.$=W*%R\!UU2W!/Z%M'DGKVLY3%2]!-BQ[QID/,3B!.X-X:KCS\
M:DHJ7]JGPNY ,=M3O,G. OZ.9@B3\0"R438Y@S<YA#R)>),S(7M@"W?*H"D4
M:GADY-/Q=G 7K\.%J;GR#18T3V0L/+DU)8NW;\:7H^LS9"\.9"_.H2^.RO))
M^4+;4!D/?W^C+<.-ML73/Z]1/@_Z\_27GT[4&[Y5! 4ZMU-F!5C;-@@=-=8Q
ME: ,<%"P4EOC12 G;[4J,=SFJ"6A!+$=/: 'NP0I7ROC?J@@H"GA2\$V)[<7
M9B#K1=SZ:@#LL"29UF+ONB"UQES3 *SX=D<2/Y 1<4YX"S'/J'47@WC5UJS>
M,;E:1C3GP3->@[M@&EF(T+7"F[9-B$;@CJ6%K8,8N^TA%V+JK-; N)428-,X
MNU6R& B6(9GKF,R<"FP]!0XA4[Z2Q,G <NL4[WJI7 >^KHUTAR]S'F'\WOY6
M2*#9O7TSS<8?KCV8,*]]# -)Q=KJM>0DWH^OY=KT&>EB^3$-M"UT6P8WKR5N
M<#(H#+66-+S$ ^5]X(IK5#IF5:;JB/7_Z8!AMX$Z?\J'S2I=6P:(@-AUHAR1
M9<^W6IJ-^DX0)7$KBUX+L.A[><JDFQI4\4+ZR?BE>$+0"G.E0QU4J*AHE>3T
MKE/![IG(B3=$1DKFG@2H0<>J4!)-:&B.7.KG>8'0^,/7YCP]VLDUN55\>3S$
M+NS6\T%Z>-P^=CO]6;U[&>_1K:1,H&DIIJ/AA_<)N.ZUZ3[8-G'#YY;EO8C'
M2AYH<D%![I=6NJ;_" X.3_[B/U!+ P04    " #Q06Y6;R5VQ"P$  "T"0
M&0   'AL+W=O<FMS:&5E=',O<VAE970Q-2YX;6R55MN.VS80??=7#-2@L ''
MEB7OQ5O;0+Q)T!1-L,ANFX>B#[0TMHBE2(>D[-V_[PPE*]K&,=H7FQ3G<F;F
MS)#S@[&/KD#T\%0J[191X?WN9CQV68&E<".S0TTG&V-+X6EKMV.WLRCRH%2J
M<1+'E^-22!TMY^';G5W.3>65U'AGP55E*>SS"I4Y+*))=/SP66X+SQ_&R_E.
M;/$>_1^[.TN[<6LEER5J)XT&BYM%]&9RLYJR?!#X4^+!==; D:R->>3-AWP1
MQ0P(%6:>+0CZV^,M*L6&",;7QF;4NF3%[OIH_7V(G6)9"X>W1GV1N2\6T74$
M.6Y$I?QG<_@5FW@NV%YFE N_<*AETZL(LLIY4S;*A*"4NOX73TT>.@K7\0\4
MDD8A";AK1P'E6^'%<F[- 2Q+DS5>A%"#-H&3FHMR[RV=2M+SRT_&(\S@-7PB
M GS0F2D1^K\;YP9PAQ;N"V%Q/O;DB>7'66-U55M-?F UA8]&^\+!.YUC_E)_
M3 A;F,D1YBHY:_ WH4>03H:0Q$EZQE[:AIT&>^F9L!UX ^^E%CJ30L&]%QZ)
M;MZ=BK<V-SUMCCOGQNU$AHN(6L.AW6.T_/FGR67\RQFPTQ;L])SUY3MAM=1;
M]ZTB\-<#/GE8*9,]_GT*[EF#I^'V9X/>&1+ 2CB9@28)V4BH(+$C"1<D\"E3
M54YYS:6JZI[3.4@')+ZK/.:P?J:SO<PIFA.6Q%Y()=8*N3!T4)*%8+DP*D?K
M6-T7"(?0:IB_%GNT-#E 5^6:4)C-"RT'-(2<)PSLCN974":XTN0C>,L8"=*Y
M@&A \/1PM2)11GMF2AN>+X0GEY7*P61994%NP"$MI)?LGB"1IB41[:T(A@SE
MPU78 O5400HH9 ]M)AU!,D&#8F-\4G>2$:3IF(*CJ1-. S:V233&;@J";$!(
M$DU*6H7OHR9-/KBE4@G]/(('VFR,HJ'-V:,B"O)*L#*II C1-QJ4?*J"-U0?
M+G>.VM"<JC\<1<[DN.9&L.C^520'@9V: KWI/106$<IZK""/E1X-A8HN$IX+
M/9X+_),$#K]TUF\A#N 57,>SX>QZ2JO^++T87LU2&/3N:\+T.^@'<#6\GJ7#
MR6Q*JXO)A%9QK^Z"$.A_(- KB$>3F%W1?P(#^-)0%X[4K:C.CC\TE#UFP'\7
M+G3"Y3&8$)F\4%R=]#(=3B_B(1P*J6HVL L"V>F 84TS;0)<;M26#9T:<,G6
M)V/DV#JA_1^@_35FHG*AKQO?] K(BF/0A]!"!>4$UH@\-KRLFVR/0^8[X:P[
MB:[XW W93F[ F:XFL;O*R/N1<"?Q4C?4W!J,X-1D'G=N4N+,-KP7>(!5VM>7
M:ONU?9*\J6_B;^+U>^:CL%M)G%:X(=5X='41@:W?"/7&FUVXE]?&TRT?E@4]
MJ]"R )UO#$V<9L,.VH?:\A]02P,$%     @ \4%N5O;FH-+H P  E@@  !D
M  !X;"]W;W)K<VAE971S+W-H965T,38N>&ULG5;?;]LV$'[?7W%0T6(#/$N6
MW21-; -UVF =D"%(NNUAV ,MG24B%*GRAYWLK]\=)2LVEOIA+PE)W7WWW7=W
MI.<[8Q]=C>CAJ5':+9+:^_8R35U18R/<V+2HZ<O&V$9XVMHJ=:U%44:G1J5Y
MEIVEC9 Z6<[CV9U=SDWP2FJ\L^!"TPC[O$)E=HMDDNP/[F55>SY(E_-65/B
M_O?VSM(N'5!*V:!VTFBPN%DD'R>7JQG;1X,_).[<P1HXD[4QC[SY4BZ2C FA
MPL(S@J!_6[Q&I1B(:'SK,9,A)#L>KO?H-S%WRF4M'%X;]:<L?;U(+A(H<2."
M\O=F]POV^;QGO,(H%__"KK,]^Y! $9PW3>],#!JIN__BJ=?AP.$B^XY#WCOD
MD7<7*++\)+Q8SJW9@65K0N-%3#5Z$SFIN2@/WM)727Y^^9OQ"),,?H8'K$AL
M#U]T5^JHF2YA%1SY.!<WUQ9+Z>':Z()L;;1R\]03$\9+BS[JJHN:?R?J%&Z-
M]K6#S[K$\M@_I0R&-/)]&JO\)."O0H]A.AE!GN73$WC3099IQ)N>D,6!-W C
MM="%% H>O/#("KV:;P<W>QV.)^O2M:+ 14*CX]!N,5F^>S,YRZY.D)T-9&>G
MT)='U8![Z1[ADW2%,BY8A+^^XI.'E3+%X]^O,3^-_>,D^^F'_]\:\+5&.FI:
MH9^AM68K2]*UB*8CD!H\?=<,JJ PP3H$LX%UCSOB"FR%E2:0DVD:M+$4A(^V
MM=(AF51FBU8SO^Z+]!([1MKX=V\N\NS#%='N5\1A0RSI%A-:_M.1'!^39@8=
M0["LY4[ZFNX?U])%PH3(K$0Z*%!NQ5I1,.GZ'-0S*-E(CR64 :/Q2_[,8')^
MY4 )6U'6H5FCC<'BF*,E(H=R">4,C;JFN]$!/K5=.0GSD)ROK0E5O3\3+8M,
MGJ/]2>33Z=$8+;VQ4E=<B@)+PJ.8MS%$+/ :E<0M=WXM_&$< G!,E>8LT-T]
MC!K48HODAM00)7X+-")J*'0)I/N^R(6A4=>.#FGEC)*E8)DVPWRY8;Z.99"Z
M4(&[AN1]J6\@-!M[@@NVTZ1>+=L8D*.UP9)>L9D*H8J@J+*4]KZQF,-!EX[A
MIO<C.1%9*+Z<D"^G_Z;,4M(B'\%D-KYX&_>3\W'^=K3O$GIGU/,H!C_,5=,;
MZP0WS ZIDL)[*]?!<P]Q68W&H\1KDEP $:X4MUMK;&?J^FGD7/L\8VWVYYTI
MN8U?NUO2@[>">JZ*+R(+$K3OGHWA='AT/W9OS8MY]V+?4A]+FG&%&W+-QN?O
M$VJ6^ IV&V_:^/*LC:<&C\N:?CB@90/ZOC%TS?8;#C#\%%G^"U!+ P04
M" #Q06Y6MA!R=Y8'  !D$@  &0   'AL+W=O<FMS:&5E=',O<VAE970Q-RYX
M;6Q]6%UOX[82?<^O(-Q%T0MHX^]ULDT"-.DM;B_0=K'9]CY<]($6*9M=6M22
M5!SWU_?,D)+E76^ P)&HX7R<.3-#Z6;O_,>PU3J*YYVMP^UH&V/S=CP.Y5;O
M9+ATC:[QI')^)R-N_68<&J^EXDT[.YY-)F_&.VGJT=T-K[WS=S>NC=;4^IT7
MH=WMI#_<:^OVMZ/IJ%MX;S;;2 OCNYM&;O2CCK\W[SSNQKT697:Z#L;5PNOJ
M=O3#].W]@N19X ^C]V%P+2B2M7,?Z>9G=3N:D$/:ZC*2!HE_3_I!6TN*X,:G
MK'/4FZ2-P^M.^T\<.V)9RZ ?G/V?47%[.[H:":4KV=KXWNW_HW,\2])7.AOX
M5^R3[.)Z),HV1+?+F^'!SM3IOWS.. PV7$V^LF&6-\S8[V2(O?Q11GEWX]U>
M>)*&-KK@4'DWG#,U)>4Q>CPUV!?O?G51B^E4O!;O]9.N6XW_I=O4AC"[&4>8
M(,%QF=7=)W6SKZB;BU]<';=!_+M66IWN'\.UWK]9Y]_][$6%_Y7UI9A/"S&;
MS.8OZ)OW\<Y9W_R%>(.(3OQD:EF71EKQ&&74X%D,Y^)-ZA;GU5')O V-+/7M
M"#41M'_2H[MOOYF^F7S_@K.+WMG%2]KONI14WNW$ X#U(#$($K?B@:FAO?C_
M!_T<Q;UUY<<_S_G_HH7S_G\WG?[KX@P=.HH$43I498C"5:+Q3K7P*DA+P&YE
M%-)KU"MO^ULK02LB-+HTE2E%XTP=A:E%1&V+%C3QV*6A$KL:;Y"3QFK2W*DP
M]0;7R9O]5M=D/7I4"N"H0Z4]YY-U9% NQ0?</;A=(^M#<E:16/=<-*TOMZAE
MX3P]*,3&/6E?P]GU =45(F120'+C=2('9-E(5OOM-U>SZ>K[($*4M9)>"6S:
M84.MR*)BQ* 9KJUUCG"8P%-_T6&$EN6V%RI8 .#N#-RD^'*P1U5  "AE,<H!
MK+$.K.ZW!A<F &AEGHQJI;4'H9 S  SE)O2P(.BCCUBH(_*$Q49[[OEU"9C6
MUFPD170*K7Z2MI544<GY'$^/30GM)@IOPL>4.J4))5-33K$ DYZLR[+4#=&D
M"_]2_'PJS.'+U,G!DE*'8IB-@2>=VLH\(PI.<-[!Q SM^B],!+:J_H+#E%RZ
MZZPE(&K,PPXA#IQ$$JHG9I_!ZQ@R@H1=M%I=]L4:A'*B=D3XTK8*I9S:#B(J
MH<+5Q*Q"R" :>4B>)!;!TXVN89OS!N;/)V3D>B*4/.!YQ13=FH8V(2GRF>(+
M0>./69P834_1XF0;M\Z#DKHCJ*6Q"$EN+4,N9D_A82'6;63GK=F9R#PINK*
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
M-.N=@ZWV"'\R% _T#PF51*K(!+'":89U-*1ION2*QPJ))CT89N3LYI$-I5R
M6B8D?,&\IZ?9=ZN>K<OT>>04#KDI2ZR+[A,RT+C7N#A<,C*E0+FY#FH>9-I8
MMP-I0$I@=#Y,'KI!3 \N>36A5GR5Y8W9VICO>\/;X;;\+E\2[]7S5?N3]&M4
M#VNHA.EL\OKE2/A\?<V'Z)IT95RYB MH>JRPLLBS N2E0P.[ P<8_H=8_@=0
M2P,$%     @ \4%N5A(L :"Q @   P8  !D   !X;"]W;W)K<VAE971S+W-H
M965T,3DN>&ULC51M;]HP$/Z^7W%*I6J3&(&$OJB%2,!6;9-:H;YLFJ9],,E!
MK#IV9CL-_/N=G9"BB:)]@/CL>YY[SN>[<:WTL\D1+6P*(<TDR*TMK\+0I#D6
MS/15B9).5DH7S)*IUZ$I-;+,@PH11H/!>5@P+H-D[/<6.AFKR@HN<:'!5$7!
M]':&0M638!CL-N[Y.K=N(TS&)5OC ]JG<J')"CN6C!<H#5<2-*XFP71X-1LY
M?^_PG6-M]M;@,EDJ]>R,K]DD&#A!*#"UCH'1YP7G*(0C(AE_6LZ@"^F ^^L=
M^XW/G7)9,H-S)7[PS.:3X#* #%>L$O9>U5^PS>?,\:5*&/\/=>-[<1Y 6AFK
MBA9,"@HNFR_;M/>P![@<O &(6D#D=3>!O,I/S+)DK%4-VGD3FUOX5#V:Q''I
MBO)@-9URPMGD3EF$80P?X8YN<)JFJI*6RS4\6"8SIC,#Y (_Z7E,,U5:S,:A
MI;@.':9MC%D3(WHC1@RW2MK<P&>9_8L/26\G.MJ)GD5'";\QV8=XV(-H$,5'
M^.+N$F+/%Q^Y! -6P0V73*:<"9>^17I\UAS*MZ$;':9S?71E2I;B)*!&,:A?
M,$A.3X;G@^LC8D>=V-$Q]N1@C9[*C/0"F3#/F5PC<+E?S87FE%<I$'X]XL;"
M3*CT^?>AU(X&/YS:^V'\X=W_/A]XS%&34OI)!9)0[!5E.A0WIL*L!\O*DI^%
M+3&PEF&Y!9LCS%51,KGM09WS-/>,N"FIV\F%:DD=BYI**;; R3&U^Z#3D\MH
M>'%M8-55O%2&NT'1 YIXFGD]E")UMP&E]QS-[FE QDTJE*G(K0^'2AON-6:!
M>NW'CP&?;].CW6XWX:9-8[^Z-^/QENDUEP8$K@@ZZ%^<!:";D=,85I6^S9?*
MTM#PRYRF-&KG0.<K1:^\-5R ;NXG?P%02P,$%     @ \4%N5N=07S63 @
MT 4  !D   !X;"]W;W)K<VAE971S+W-H965T,C N>&ULI53?;],P$'[?7W$*
M"&U26=JD/T<;J=U @#0T;04>$ ]N<FVL.7:PG;;\]YR=+.ND4B'Q$I_/=Y^_
MSY>[Z4[I1Y,C6M@70II9D%M;7H6A27,LF+E4)4HZ62M=,$M;O0E-J9%E/JD0
M8=3M#L."<1DD4^^[T\E4559PB7<:3%443/]>H%"[6= +GASW?)-;YPB3:<DV
M^(#V:WFG:1>V*!DO4!JN)&A<SX)Y[VK1=_$^X!O'G3FPP2E9*?7H-I^R6=!U
MA%!@:AT"HV6+URB$ R(:OQK,H+W2)1[:3^@?O';2LF(&KY7XSC.;SX)Q !FN
M627LO=I]Q$;/P.&E2AC_A5T3VPT@K8Q519-,# HNZY7MFW?XEX2H28@\[_HB
MS_*&699,M=J!=M&$Y@POU6<3.2Y=41ZLIE-.>3;YHBQ"#&]A+J@^3*8(5&FX
M4=7*KBL!\S15E;3&>Y>:9?CLNL<4^9:M!,+YTBWF8AI:(N6@P[0AL*@)1'\A
M$,.MDC8W\%YFF+W,#TE,JRAZ4K2(3@)^9O(2XEX'HFX4G\"+VQ>*/5Y\XH4,
MU/J.R:NS^\>S74]=F9*E. NH:0SJ+0;)FU>]8??="6[]EEO_%'KR4+<2J#5<
MYTQNB"B78'/\SW+^\')AB7L+"Z'2QY_'E)_D=ESY,M>(+RI^1O6JG 8JV9DK
MF?M$9PLF/'MF884;+B67&R>S1,U5!J]A..D,^[$S>IU!-**$C+IQ90'W-+ ,
M_9*3SF@\@@LX[W?B: P7AY@HLQ=H@TEG/!@Z8]3I329PK#;A09<5J#=^EACP
MKU<W7.MMQ]6\[M+G\'K6W3)-F@P(7%-J]W(T"$#7\Z/>6%7ZGETI2Q/ FSF-
M7-0N@,[7BO[*9N,N:(=X\@=02P,$%     @ \4%N5A/VE<^O @  D@4  !D
M  !X;"]W;W)K<VAE971S+W-H965T,C$N>&UL?53?;],P$'[O7W$*"(%DEL1)
M^F.TE>A@8DB#:AOL ?'@)M<VFF,'VUFW_YYSTH4A=7U)[NS[OOO.]MUTI\V=
MW2(Z>*BDLK-@ZUQ]&H8VWV(E[(FN4='.6IM*.'+-)K2U05&TH$J&/(J&825*
M%<RG[=K2S*>Z<;)4N#1@FZH2YG&!4N]F01P\+5R5FZWS"^%\6HL-7J/[42\-
M>6'/4I05*EMJ!0;7L^!C?+I(?7P;\+/$G7UF@Z]DI?6==RZ*61!Y02@Q=YY!
MT.\>SU!*3T0R_NPY@SZE!SZWG]C/V]JIEI6P>*;E;5FX[2P8!U#@6C327>G=
M%]S7DWF^7$O;?F'7Q691 'ECG:[V8%)0E:K[BX?].3P#C%\"\#V M[J[1*W*
M3\*)^=3H'1@?36S>:$MMT22N5/Y2KIVAW9)P;OY-.X04WL.%ND?EM"G1PML;
ML9)HWTU#1RE\8)COZ18='7^!+H%+K=S6PF=58/$_/B1IO3[^I&_!CQ)^%>H$
MDI@!CWARA"_IZTU:ON1(O1:Z^@Z5UZ'3PVC?(:>V%CG. FH!B^8>@_F;5_$P
M^G!$6]IK2X^QSZ^IXXI&(NAU?QV/#,X:8\B&7ZUJN,$'!PNI\[O?APHXFN)P
M 73&#36D/^;!]]SI%9K6]D?N/WQP7JJ2WE@!&ZT+"Z\A9<,X96,>D9VP\21E
M<<0'M]2 4"JHC<[16LA8'$]8E"04'V4I&XTG@RNQH_?KT)1"6H@YB[,1A440
MQRR:)"Q.H\'2Z*+INM8V=2W]FTQ&$4LYAV0R9*,D&]QH)R1EYYSQ8<R2<48.
M94N3,1L-AW#H/L)G?5*AV;33P$*N&^6ZENE7^X'SL>NS?^'=M+H49E,J"Q+7
M!(U.1ED IIL G>-TW7;=2COJX=;<TM!$XP-H?ZWI)>X=GZ ?P_._4$L#!!0
M   ( /%!;E8;:.CLR0(  #8&   9    >&PO=V]R:W-H965T<R]S:&5E=#(R
M+GAM;'U5WV_3,!!^[U]Q"@AM4K>D^=%VHXU$!P@00]4VV /BP4VNC37'#K:S
M=O\]YZ3-.M3U)3[;]WW^[NR[3-9*/Y@"T<*F%-),O<+:ZM+W359@R<RYJE#2
MSE+IDEF:ZI5O*HTL;T"E\,,@&/HEX])+)\W:7*<355O!)<XUF+HLF7Z:H5#K
MJ3?P=@LW?%58M^"GDXJM\!;MSVJN:>9W+#DO41JN)&A<3KT/@\M9[/P;AU\<
MUV;/!A?)0JD'-_F:3[W "4*!F74,C(9'O$(A'!')^+OE]+HC'7#?WK%_;F*G
M6!;,X)42]SRWQ=0;>Y#CDM7"WJCU%]S&DSB^3 G3?&'=^B;DG-7&JG(+)@4E
ME^W(-ML\[ '&P2N < L(&]WM08W*C\RR=*+5&K3S)C9G-*$V:!+'I;N46ZMI
MEQ/.IC^414C@#.9:Y75FX9YIS:3E:.#DCBT$FM.);^DDY^]G6]99RQJ^PAK!
MM9*V,/!)YIB_Q/NDL),9[F3.PJ.$WY@\AVC0AS (HR-\41=VU/!%1\(VT,9W
M*+P6'1]&NT*Y-!7+<.I1)1C4C^BE[]X,AL'[(]KB3EM\C#V]I<++:X&@EO_?
MRA-\YVS!!2?K=Z,>[G!C8294]O#G4"!'CSH<R%VA$5]<8(_27U/)NAOHN1MP
MG[ W8X+)#(%96."*2\GERHFN4'.5PUL8)?T@"#JCMQ/O'A?+,EUC#M178/W\
MYK@Q;C6OM2.S!>[8DJ0?1X$;PCCJ=?G(!.,EL<D<,F6L@8KQ0_"3<-A/1C&<
MPLFH/[X@HW=5,+ER1TH075:='$K%&6ZXL8YC3]L!UFC<'R=#QQJ/^E%\0;1[
M64%2M9^/X<M\P*''XN_5<HEZU70L0\'5TK9EW:UV3?%#VPN>W=N.>LTTW8H!
M@4N"!N>CQ /==JEV8E75=(:%LM1G&K.@QH[:.=#^4E&9;"?N@.Y7D?X#4$L#
M!!0    ( /%!;E;Q!]'T,@,  !T'   9    >&PO=V]R:W-H965T<R]S:&5E
M=#(S+GAM;*5536_;.!"]^U<,U.PB 53KVY93VT"=M&B+I!LDV?90]$!+8YL(
M1:HD5<?_OD/)T298UX?=@Z4A.>_-FS%G--TJ_6 VB!8>*R'-S-M86Y\'@2DV
M6#$S5#5*.EDI73%+2[T.3*V1E2VH$D$<AJ.@8EQZ\VF[=Z/G4]58P27>:#!-
M53&]6Z!0VYD7>4\;MWR]L6XCF$]KML8[M'_7-YI60<]2\@JEX4J"QM7,>QN=
M+U+GWSI\X;@USVQPF2R5>G"+C^7,"YT@%%A8Q\#H]1,O4 A'1#)^[#F]/J0#
M/K>?V-^WN5,N2V;P0HFOO+2;F9=[4.**-<+>JNT'W.>3.;Y""=,^8=OY9A2Q
M:(Q5U1Y,ZXK+[LT>]W5X!LC#WP#B/2!N=7>!6I67S++Y5*LM:.=-;,YH4VW1
M)(Y+]Z?<64VGG'!V_EE9A!&\ABLEUZ\MZ@HN<6F!R1+<F8$;MF-+@7!Z[U[F
M;!I8BNO00;&/L>ABQ+^)D<"UDG9CX)TLL7R)#TAO+SI^$KV(CQ)^8G((2>1#
M',;)$;ZD+T+2\B5'BF"@R^]0>ATZ/8QV;7-N:E;@S*.^,*A_HC?_\U4T"M\<
MT9;VVM)C[/,[:L.RH?JK5??/?&MUPCT^6E@(53Q\/R3Y*.EAR535AOK2%7;P
M5V'5$G5KNR*[1SSXPO6:2\[@%IF =\8RNCQ7BDDX/1D-,[J?0KA64YJ3'[G4
MFLN"UTR<0;V_1EQ"Y6Z#V)%)#$)0BUOCTCNA:'D4^W10B*;D<DT674DT%DZ9
MA60XR?XX\ZE#[ 9670"V<_ .[2=1[H?Q!,H&X9KMH+LA*9Q XH^BT!^'46>/
M)GX\20>?E2:F"Z85%>A@5O&0X/\W+8H\&27_-:UQ%/GC<?*OI/(D\\,H@CR;
M^$F8#^X51071MW'I+DOJIVGFCZ.8K"S._5$8#Z[0&!HM6KL(+\0F:41>,20)
MU9'J<_6"S =\?$K@(/R$@D0A_29A9T]"/PMS.-0%P;.15:%>MX.99*E&VFYZ
M];O]['_;C;Q_W+L/QS5SM]* P!5!P^$X\T!WP[A;6%6W W"I+(W3UMS0]PNU
M<Z#SE:+^WR]<@/Z+./\%4$L#!!0    ( /%!;E894CO%NP(  ,8%   9
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
M%VV,9IE7]GE'BZ4MCF="8ZEMFPF^AD":!3@_%U@@%QVS0?F^ZO\'4$L#!!0
M   ( /%!;E8*VKUGC (  'D&   9    >&PO=V]R:W-H965T<R]S:&5E=#(X
M+GAM;*5576^;,!3]*Q;:0RNM)8&0CRI!RL>F;5*GJEFW9P,7L&IL9CM)^^]W
M;2A-,]I5V@O8EWN.S[FV+_.#5/>Z!##DH>)"+[S2F/K*]W5:0D7UI:Q!X)=<
MJHH:G*K"U[4"FCE0Q?U@,!C[%67"B^<N=J/BN=P9S@3<**)W5475XPJX/"R\
MH?<4N&5%:6S C^<U+6 +YJZ^43CS.Y:,52 TDX(HR!?><GBUCFR^2_C)X*"/
MQL0Z2:2\MY.OV<(;6$' (366@>)K#VO@W!*AC-\MI]<M:8''XR?VS\X[>DFH
MAK7DOUAFRH4W]4@&.=UQ<RL/7Z#UXP2FDFOW)(<V=^"1=*>-K%HP*JB8:-[T
MH:W#$0!Y^@%!"PA. :-7 &$+")W11IFSM:&&QG,E#T39;&2S U<;AT8W3-A=
MW!J%7QGB3/Q=&B AN2!+CAM*10H$CP;9R%UB\ATGRS25.V&TB_Y0-(/GT"VD
MP/8TX8#X;7,,B,S)NJ2B $V8(*:$_V0^VX"AC.MS7.-NNR%G'\[GOD'G5K^?
MMBY7C<O@%9<AN9;"E)I\$AED+_$^5JPK6_!4ME7P)N$W*BY)./Q(@D$0]NA9
MOQ\>O"$G['8Q='RC5_A6E+L"4T,2*)@03!1V)VI03&9]]6KXQH[/WO1]/)Z-
M1VAE?^RB)VL8!9,NZX7842=V] ^Q&5ZTQ& 32.4>U&.?OH8B.EKY8C:93D[T
M]62-PF#:KR_J]$7O+2:([.TR1G\5*)I-H_&)S)ZLR7 V.Y'I']WB"E3AFILF
M[DHT)[.+=OUSZ=K&27R%?;5I@\\T35.^I@I/AR8<<J0<7$Y0F6H:73,QLG:]
M(I$&.X\;EOAO &43\'LNL5^T$[M ][>)_P!02P,$%     @ \4%N5L$(_36&
M @  E 8  !D   !X;"]W;W)K<VAE971S+W-H965T,CDN>&ULC95M;YLP$,>_
MBH7VHI6V@A\@H2)(:ZIJG;0M:M;UM0M.8M78S'9"^^UG T5I0J*]"3[[_G>_
MNY@C:Y1^,1O&+'BMA#2S8&-M?1V&IMBPBIHK53/I3E9*5]0Z4Z]#4VM&RU94
MB1!%41)6E,L@S]J]A<XSM;6"2[;0P&RKBNJW&R94,PM@\+[QP-<;ZS?"/*OI
MFBV9?:P7VEGA$*7D%9.&*PDT6\V"K_!ZGGC_UN$/9XW96P-?R;-2+]ZX+V=!
MY(&88(7U$:A[[-B<">$#.8R_?<Q@2.F%^^OWZ'=M[:Z69VK87(DG7MK-+)@&
MH&0KNA7V037?6%]/[.,52ICV%S2=;Y(&H-@:JZI>[ @J+KLG?>W[L"> Y(0
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
MG)S"1"&RCQ79B>(+LWT_YDKQU!S. 341N@'<GW*NGD^T@^*34>]_4$L#!!0
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
MS21(I'W!/%\*,TW4&SN<-+/E^"]02P,$%     @ \4%N5AOF1R > @  /P0
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
MY2#79U3>P-5$!:@??-%_4$L#!!0    ( /%!;E;VY9H]&P,  $@1   -
M>&PO<W1Y;&5S+GAM;-U874_;,!3]*Y$9$T@3:1H:FM%4VBHA3=HF)'C8&W(;
MI[7DV)GCLI9?/]\X33_P18R'#9:JQ+['Y]QC^P9''=5F+=C-@C$3K$HAZXPL
MC*D^AF$]6["2UF>J8M(BA=(E-;:KYV%=:4;S&DBE"/N]7A*6E$LR'LEE>56:
M.IBII309.>]"@;M]R3,2)><D<'(3E;.,W)V\_[E4YO)=X.Y''XZ.>G>GEX?Q
MDP8X):%7=/ ,T;,>KFLQ3#K9E]X,/[9:'?<8(U]XR%NFHX7MNHU'A9+;Y8N)
M"UA=6K+@GHJ,3*C@4\V!5="2B[4+]R$P4T+IP-A]LXDBB-0/#HY<#[:TU2FY
M5+K)[3*XO]-V^ &PZ8%!+D1GL$]<8#RJJ#%,RRO;:08WP4=0T+9OUY5U.-=T
M'?4'9$MH;C;)5.F<Z2Y-1#:A\4BP NQH/E_ W:@J!- 85=I&SNE<2=IXV##:
MAI6=,2%NH-Y_%'O:JV)GQWJP7[)K6D-MT\FX#NCOJCGM7=G>BW2#BM\K\WEI
MIR.;/A0HN]:LX*NFORHZ YAZA*O3JA+K3X+/9<G<Y)^=<#RB&UZP4)H_V&Q0
M*C,;8)H$]TP;/MN-_-*TNF4KLRFG58%[[K]!SW]WG>=,,DW%KFE;^Z]YE5_L
M.+[X5Y:;_RJ'AKT>VT/LM9L<O 63R5LP^3IK,FR/G9VS;>]DZZ(!O$%DY#N\
MB8AMTF"ZY,)PV?86/,^9?'3 67E#I_8U<4_?CL]909?"W'9@1K;M;RSGRS+M
M1EW#0K2CMNVO,+THZ5Y?;"XN<[9B^:3MZOFT:0:V8;.V%Q .D:OF\B,8QV%^
M!# L#^8 XS@6EN=_FL\0G8_#,&]#+S)$.4.4XU@^9-)\L#Q^3FHO_TS3-(Z3
M!%O1R<3K8(*M6Y+ UZ^&>0,&E@<R_=E:X[N-5\C3=8#MZ5,5@LT4KT1LIOA:
M ^)?-V"DJ7^WL3S P'8!JQW([\\#->7GQ#'L*N8->X)Q)$TQ!&K17Z-)@JQ.
M A___F!/21RGJ1\!S.\@CC$$GD8<P1R !PR)X^8</#B/PLTY%6Y_.QG_!E!+
M P04    " #Q06Y6EXJ[',     3 @  "P   %]R96QS+RYR96QSG9*Y;L,P
M#$!_Q=">, ?0(8@S9?$6!/D!5J(/V!(%BD6=OZ_:I7&0"QEY/3P2W!YI0.TX
MI+:+J1C]$%)I6M6X 4BV)8]ISI%"KM0L'C6'TD!$VV-#L%HL/D N&6:WO606
MIW.D5XA<UYVE/=LO3T%O@*\Z3'%":4A+,P[PS=)_,O?S##5%Y4HCE5L:>-/E
M_G;@2=&A(E@6FD7)TZ(=I7\=Q_:0T^FO8R*T>EOH^7%H5 J.W&,EC'%BM/XU
M@LD/['X 4$L#!!0    ( /%!;E;JK3<;RP,   ,<   /    >&PO=V]R:V)O
M;VLN>&ULQ9E-;]LX$$#_"J%3>LC:HFSG W6!M&Z[ =+42(KL<4%+8YL(11HD
M%;?]]1U*,$IEJ\%>3)]LD33U-++F<:BW>V.?5\8\L^^UTFZ>;;W?78]&KMQ"
M+=Q?9@<:>];&UL+CH=V,W,Z"J-P6P-=JQ,?CV:@64F?OWA[F6MI1?& \E%X:
MC8VAX4G"WOWN#X?L13JYDDKZ'_.L_:X@8[74LI8_H9IGXXRYK=G_;:S\:;07
MZK&T1JEYEG<=3V"]+/_3_!@@OXF5:UN\6#T(!)EGLS%.N);6^79$.[] QA?
MP=U1X\TGJ3S8A?#PV9IF)_4F3(-7,8HNHXW#X;,+XK7]/V$TZ[4L86'*I@;M
MNSA:4 %0NZW<N8QI4<,\.PQA-[IB'[7'(+%;W4V%8\.5XJEOJ^ZJ/>)&,;37
M$COL;=6"'P_R@]$5: <5PV_.*%DA1\7>"R5T"2R"Y 0D/R'DOSR"+ C(XB20
MCP$'?QI!3@C(R0DA>Y&<$I#34T(6$>2,@)P=%_(>LR/+V3G[#!JL4!'5!4%U
MD8"*(]6C-^4SIIL2QV-Z9$M\5%S\.%\2D)<)( N$O%'*[-L\@_.PA6E6?MW$
MD;PB(*\20$X0\E:_X$@4&+@X98^IG#U.P#9%-G1TU92>_2.L%7BC^XBD5H[L
ME19QAHAW1F_.4<<U6\#*,X$NQ+X8DQ)+?F2SM)@7 1.$ZT>/4DE^9)>T6)>(
M]4E(RYZ$:H!]0<+&!I7THD?))#^R35K,*\2\QQ-@KC$UL+,[X]P;M@0;9YN<
MTDE^9)]TJ7H<LB)LVA59M QC(L:DA)(G,4I0R@-@RL%;_@"EV6CY>K5(^25/
M(9@\& ;=['%I#;I\E78HL^0IU)(7[5]RSV[*TC0M95@\Z*IWJRFWY"GD,F3
MWC*,4Y[A*3SSRH'L#$LM!>Y-#$F9AJ<PS9]E&%AC3+*$26&:(2'V;SEE'I["
M/+^%^,>[32F'GU(Y_3!2RN%)E#.0R]E9C$DIAZ=0SE"YT(\F)1V>0CJ#Z3(N
M"#DE'YY"/J_391!EO3.ZMP/ *?GP%/(92I@+B'=3*/D4IRMR0E!C3$H_Q2D+
MG=Y_LZ#T4YQ4/Y,8D]Q#2Z&?0<QIC$E9J$AAH=B2"_!"*L>^P7??Q&N.@K)0
MD<)"$2;6DXW'&I(MQ8_^EF1!6:A(8:%!I_<>(<I"10H+#6+V'B'*0D62$FB@
MVNUOEE,6*E)8:&B%U,.<4!::I+#0X$+N/,:D+#3IWC\=7CI5L)8:JGL\A</V
M4JAR:5GXZ';$)M-0GJX;I3Y@VU=]9T1U>(=U>/_V[A=02P,$%     @ \4%N
M5BE=B*"3 0  XA@  !H   !X;"]?<F5L<R]W;W)K8F]O:RYX;6PN<F5L<\W9
M38Z"0!"&X:L8#F!;5?@W45>S<3OQ D1;,8(0NB>CMQ^C"_W(+&9C^EN1;D+Q
MAL43 HLO7Q7QV)Q#>6S#X%)7Y[#,RAC;#^?"MO1U$89-Z\^W,_NFJXMX6W8'
MUQ;;4W'P3D>CB>M>9V2KQ>O,P>;:^O],;/;[X]9_-MOOVI_C'X/=3].=0NE]
MS :;HCOXN,S<I7IN!W<_R/ V.1NL=\NL6^\D<ZF#%((T?9!!D*4/RB$H3Q\T
MAJ!Q^J )!$W2!TTA:)H^: 9!L_1!<PB:IP^2$<HX(DCJ84V@M2#70N"U(-A"
M(+8@V4)@MB#:0J"V(-M"X+8@W$(@MR#=0F"W(-Y"H+>BWDJ@MZ+>2J"W]EZV
M"?16U%L)]%;46PGT5M1;"?16U%L)]%;46PGT5M1;"?16U%L)]#;4VPCT-M3;
M"/0VU-L(]+;>QQ("O0WU-@*]#?4V KT-]38"O0WU-@*]#?4V KT-]38"O7/4
M.R?0.T>]\W?J'>*U\N'9\UCC_=])=;Q=ZY^WOR\?F[V'<,?9P2^-U2]02P,$
M%     @ \4%N5HB,J3>E 0  +QD  !,   !;0V]N=&5N=%]4>7!E<UTN>&UL
MS9G-;H,P$(1?!7&-@F,[37^4Y-+VVN;0%W!A"2B +=M)D[>O(3]2JQ0U2J7.
M!0N\.S-XI>\ T[>=(1=MZZIQL[CPWCPPYM*":N42;:@).[FVM?+AUBZ94>E*
M+8F)T6C"4MUX:OS0MQKQ?/I$N5I7/GK>AL>NU,TLME2Y.'K<%[9>LU@94Y6I
M\F&?;9KLF\OPX)"$SJ[&%:5Q@U 0L[,.[<[/!H>^UPU96V84+93U+ZH.56Q;
M,>=W%;FD7^),1IWG94J93M=U:$F<L:0R5Q#YNDKVHH-^9Q].F/97?K5_)]-G
M&"H75AL7)F;I<KOC2-KNH0E"9'W9_XHGQR!]]?M1.^V,LE]ZA^/]T';5S<.Q
M;KG^C+_.^*1_80X!DD."Y!B#Y+@!R3$!R7$+DN,.),<]2 X^0@F"0E2.@E2.
MPE2. E6.0E6.@E6.PE6. E:.0E:!0E:!0E:!0E:!0E:!0E:!0E:!0E:!0E:!
M0E:!0E:)0E:)0E:)0E:)0E:)0E:)0E:)0E:)0E:)0E:)0M8Q"EG'_TG6=ZU7
M?_T)OUV36I7-T9]U_TGFGU!+ 0(4 Q0    ( /%!;E8'04UB@0   +$    0
M              "  0    !D;V-0<F]P<R]A<' N>&UL4$L! A0#%     @
M\4%N5@4@H@#O    *P(  !$              ( !KP   &1O8U!R;W!S+V-O
M<F4N>&UL4$L! A0#%     @ \4%N5IE<G",0!@  G"<  !,
M ( !S0$  'AL+W1H96UE+W1H96UE,2YX;6Q02P$"% ,4    " #Q06Y66#?3
M6MP%  #U'@  &               @($."   >&PO=V]R:W-H965T<R]S:&5E
M=#$N>&UL4$L! A0#%     @ \4%N5LX1J3A !@  TA@  !@
M ("!( X  'AL+W=O<FMS:&5E=',O<VAE970R+GAM;%!+ 0(4 Q0    ( /%!
M;E;6E,U_%@,  %(*   8              " @984  !X;"]W;W)K<VAE971S
M+W-H965T,RYX;6Q02P$"% ,4    " #Q06Y6OO$KD58$  "$#@  &
M        @('B%P  >&PO=V]R:W-H965T<R]S:&5E=#0N>&UL4$L! A0#%
M  @ \4%N5N<K>VXP!   *A(  !@              ("!;AP  'AL+W=O<FMS
M:&5E=',O<VAE970U+GAM;%!+ 0(4 Q0    ( /%!;E:M1AP<10<  '<?   8
M              " @=0@  !X;"]W;W)K<VAE971S+W-H965T-BYX;6Q02P$"
M% ,4    " #Q06Y6JJ4NCS\&  #C#@  &               @(%/*   >&PO
M=V]R:W-H965T<R]S:&5E=#<N>&UL4$L! A0#%     @ \4%N5F32SRXY!0
M! T  !@              ("!Q"X  'AL+W=O<FMS:&5E=',O<VAE970X+GAM
M;%!+ 0(4 Q0    ( /%!;E9FM?IYT (  )T&   8              " @3,T
M  !X;"]W;W)K<VAE971S+W-H965T.2YX;6Q02P$"% ,4    " #Q06Y6&R[T
M+],"  #L!0  &0              @($Y-P  >&PO=V]R:W-H965T<R]S:&5E
M=#$P+GAM;%!+ 0(4 Q0    ( /%!;E:BVH \?@,  "D(   9
M  " @4,Z  !X;"]W;W)K<VAE971S+W-H965T,3$N>&UL4$L! A0#%     @
M\4%N5@R7=9#'!P  $!,  !D              ("!^#T  'AL+W=O<FMS:&5E
M=',O<VAE970Q,BYX;6Q02P$"% ,4    " #Q06Y6ZMA-X ((  "9%P  &0
M            @('V10  >&PO=V]R:W-H965T<R]S:&5E=#$S+GAM;%!+ 0(4
M Q0    ( /%!;E;"4=4-EP,  /X'   9              " @2].  !X;"]W
M;W)K<VAE971S+W-H965T,30N>&UL4$L! A0#%     @ \4%N5F\E=L0L!
MM D  !D              ("!_5$  'AL+W=O<FMS:&5E=',O<VAE970Q-2YX
M;6Q02P$"% ,4    " #Q06Y6]N:@TN@#  "6"   &0              @(%@
M5@  >&PO=V]R:W-H965T<R]S:&5E=#$V+GAM;%!+ 0(4 Q0    ( /%!;E:V
M$')WE@<  &02   9              " @7]:  !X;"]W;W)K<VAE971S+W-H
M965T,3<N>&UL4$L! A0#%     @ \4%N5L>MLW!?!0  3PP  !D
M     ("!3&(  'AL+W=O<FMS:&5E=',O<VAE970Q."YX;6Q02P$"% ,4
M" #Q06Y6$BP!H+$"   #!@  &0              @('B9P  >&PO=V]R:W-H
M965T<R]S:&5E=#$Y+GAM;%!+ 0(4 Q0    ( /%!;E;G4%\UDP(  - %   9
M              " @<IJ  !X;"]W;W)K<VAE971S+W-H965T,C N>&UL4$L!
M A0#%     @ \4%N5A/VE<^O @  D@4  !D              ("!E&T  'AL
M+W=O<FMS:&5E=',O<VAE970R,2YX;6Q02P$"% ,4    " #Q06Y6&VCH[,D"
M   V!@  &0              @(%Z<   >&PO=V]R:W-H965T<R]S:&5E=#(R
M+GAM;%!+ 0(4 Q0    ( /%!;E;Q!]'T,@,  !T'   9              "
M@7IS  !X;"]W;W)K<VAE971S+W-H965T,C,N>&UL4$L! A0#%     @ \4%N
M5AE2.\6[ @  Q@4  !D              ("!XW8  'AL+W=O<FMS:&5E=',O
M<VAE970R-"YX;6Q02P$"% ,4    " #Q06Y6*M$YY9X"  "0!0  &0
M        @('5>0  >&PO=V]R:W-H965T<R]S:&5E=#(U+GAM;%!+ 0(4 Q0
M   ( /%!;E:V=.9$E0(  (0%   9              " @:I\  !X;"]W;W)K
M<VAE971S+W-H965T,C8N>&UL4$L! A0#%     @ \4%N5A/EE&K) P  :PT
M !D              ("!=G\  'AL+W=O<FMS:&5E=',O<VAE970R-RYX;6Q0
M2P$"% ,4    " #Q06Y6"MJ]9XP"  !Y!@  &0              @(%V@P
M>&PO=V]R:W-H965T<R]S:&5E=#(X+GAM;%!+ 0(4 Q0    ( /%!;E;!"/TU
MA@(  )0&   9              " @3F&  !X;"]W;W)K<VAE971S+W-H965T
M,CDN>&UL4$L! A0#%     @ \4%N5B956L/O @  4 H  !D
M ("!]H@  'AL+W=O<FMS:&5E=',O<VAE970S,"YX;6Q02P$"% ,4    " #Q
M06Y6(#,!!]$"  #=!P  &0              @($<C   >&PO=V]R:W-H965T
M<R]S:&5E=#,Q+GAM;%!+ 0(4 Q0    ( /%!;E:"?[LM^P0  #X:   9
M          " @22/  !X;"]W;W)K<VAE971S+W-H965T,S(N>&UL4$L! A0#
M%     @ \4%N5@\QGVO0 @  RP@  !D              ("!5I0  'AL+W=O
M<FMS:&5E=',O<VAE970S,RYX;6Q02P$"% ,4    " #Q06Y6H"RQ2*,#   N
M#@  &0              @(%=EP  >&PO=V]R:W-H965T<R]S:&5E=#,T+GAM
M;%!+ 0(4 Q0    ( /%!;E88W@]M9@8  *8D   9              " @3>;
M  !X;"]W;W)K<VAE971S+W-H965T,S4N>&UL4$L! A0#%     @ \4%N5N)H
MS"3K @  9PH  !D              ("!U*$  'AL+W=O<FMS:&5E=',O<VAE
M970S-BYX;6Q02P$"% ,4    " #Q06Y6&^9'(!X"   _!   &0
M    @('VI   >&PO=V]R:W-H965T<R]S:&5E=#,W+GAM;%!+ 0(4 Q0    (
M /%!;E:DYV9WJ@(  ((&   9              " @4NG  !X;"]W;W)K<VAE
M971S+W-H965T,S@N>&UL4$L! A0#%     @ \4%N5H<#N*>3 @  N 8  !D
M             ("!+*H  'AL+W=O<FMS:&5E=',O<VAE970S.2YX;6Q02P$"
M% ,4    " #Q06Y6CO(R!1X"  #>!   &0              @('VK   >&PO
M=V]R:W-H965T<R]S:&5E=#0P+GAM;%!+ 0(4 Q0    ( /%!;E8@&7J,^ (
M /P)   9              " @4NO  !X;"]W;W)K<VAE971S+W-H965T-#$N
M>&UL4$L! A0#%     @ \4%N5O;EFCT; P  2!$   T              ( !
M>K(  'AL+W-T>6QE<RYX;6Q02P$"% ,4    " #Q06Y6EXJ[',     3 @
M"P              @ ' M0  7W)E;',O+G)E;'-02P$"% ,4    " #Q06Y6
MZJTW&\L#   #'   #P              @ &IM@  >&PO=V]R:V)O;VLN>&UL
M4$L! A0#%     @ \4%N5BE=B*"3 0  XA@  !H              ( !H;H
M 'AL+U]R96QS+W=O<FMB;V]K+GAM;"YR96QS4$L! A0#%     @ \4%N5HB,
MJ3>E 0  +QD  !,              ( !;+P  %M#;VYT96YT7U1Y<&5S72YX
8;6Q02P4&     #$ ,0!.#0  0KX

end
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>XML
<SEQUENCE>55
<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>56
<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>57
<FILENAME>FilingSummary.xml
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
<XML>
<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.22.4</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>62</ContextCount>
  <ElementCount>197</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>false</FootnotesReported>
  <SegmentCount>25</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>8</UnitCount>
  <MyReports>
    <Report instance="occ20230131_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>000 - Document - Document And Entity Information</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://http/20230131/role/statement-document-and-entity-information</Role>
      <ShortName>Document And Entity Information</ShortName>
      <MenuCategory>Cover</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="occ20230131_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>001 - Statement - Condensed Consolidated Balance Sheets (Unaudited)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited</Role>
      <ShortName>Condensed Consolidated Balance Sheets (Unaudited)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>2</Position>
    </Report>
    <Report instance="occ20230131_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R3.htm</HtmlFileName>
      <LongName>002 - Statement - Condensed Consolidated Balance Sheets (Unaudited) (Parentheticals)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals</Role>
      <ShortName>Condensed Consolidated Balance Sheets (Unaudited) (Parentheticals)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>3</Position>
    </Report>
    <Report instance="occ20230131_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R4.htm</HtmlFileName>
      <LongName>003 - Statement - Condensed Consolidated Statements of Operations (Unaudited)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://http/20230131/role/statement-condensed-consolidated-statements-of-operations-unaudited-</Role>
      <ShortName>Condensed Consolidated Statements of Operations (Unaudited)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>4</Position>
    </Report>
    <Report instance="occ20230131_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R5.htm</HtmlFileName>
      <LongName>004 - Statement - Condensed Consolidated Statements of Shareholders' Equity (Unaudited)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://http/20230131/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited</Role>
      <ShortName>Condensed Consolidated Statements of Shareholders' Equity (Unaudited)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>5</Position>
    </Report>
    <Report instance="occ20230131_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R6.htm</HtmlFileName>
      <LongName>005 - Statement - Condensed Consolidated Statements of Cash Flows (Unaudited)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited</Role>
      <ShortName>Condensed Consolidated Statements of Cash Flows (Unaudited)</ShortName>
      <MenuCategory>Statements</MenuCategory>
      <Position>6</Position>
    </Report>
    <Report instance="occ20230131_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R7.htm</HtmlFileName>
      <LongName>006 - Disclosure - Note 1 - General</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://http/20230131/role/statement-note-1-general</Role>
      <ShortName>Note 1 - General</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>7</Position>
    </Report>
    <Report instance="occ20230131_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R8.htm</HtmlFileName>
      <LongName>007 - Disclosure - Note 2 - Stock Incentive Plans and Other Share-based Compensation</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://http/20230131/role/statement-note-2-stock-incentive-plans-and-other-sharebased-compensation</Role>
      <ShortName>Note 2 - Stock Incentive Plans and Other Share-based Compensation</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>8</Position>
    </Report>
    <Report instance="occ20230131_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R9.htm</HtmlFileName>
      <LongName>008 - Disclosure - Note 3 - Allowance for Doubtful Accounts for Trade Accounts Receivable</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://http/20230131/role/statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable</Role>
      <ShortName>Note 3 - Allowance for Doubtful Accounts for Trade Accounts Receivable</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>9</Position>
    </Report>
    <Report instance="occ20230131_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R10.htm</HtmlFileName>
      <LongName>009 - Disclosure - Note 4 - Inventories</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://http/20230131/role/statement-note-4-inventories</Role>
      <ShortName>Note 4 - Inventories</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>10</Position>
    </Report>
    <Report instance="occ20230131_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R11.htm</HtmlFileName>
      <LongName>010 - Disclosure - Note 5 - Product Warranties</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://http/20230131/role/statement-note-5-product-warranties</Role>
      <ShortName>Note 5 - Product Warranties</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>11</Position>
    </Report>
    <Report instance="occ20230131_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R12.htm</HtmlFileName>
      <LongName>011 - Disclosure - Note 6 - Long-term Debt and Notes Payable</LongName>
      <ReportType>Notes</ReportType>
      <Role>http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-</Role>
      <ShortName>Note 6 - Long-term Debt and Notes Payable</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>12</Position>
    </Report>
    <Report instance="occ20230131_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R13.htm</HtmlFileName>
      <LongName>012 - Disclosure - Note 7 - Leases</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://http/20230131/role/statement-note-7-leases</Role>
      <ShortName>Note 7 - Leases</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>13</Position>
    </Report>
    <Report instance="occ20230131_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R14.htm</HtmlFileName>
      <LongName>013 - Disclosure - Note 8 - Fair Value Measurements</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://http/20230131/role/statement-note-8-fair-value-measurements</Role>
      <ShortName>Note 8 - Fair Value Measurements</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>14</Position>
    </Report>
    <Report instance="occ20230131_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R15.htm</HtmlFileName>
      <LongName>014 - Disclosure - Note 9 - Net Income (Loss) Per Share</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://http/20230131/role/statement-note-9-net-income-loss-per-share</Role>
      <ShortName>Note 9 - Net Income (Loss) Per Share</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>15</Position>
    </Report>
    <Report instance="occ20230131_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R16.htm</HtmlFileName>
      <LongName>015 - Disclosure - Note 10 - Segment Information and Business and Credit Concentrations</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://http/20230131/role/statement-note-10-segment-information-and-business-and-credit-concentrations</Role>
      <ShortName>Note 10 - Segment Information and Business and Credit Concentrations</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>16</Position>
    </Report>
    <Report instance="occ20230131_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R17.htm</HtmlFileName>
      <LongName>016 - Disclosure - Note 11 - Revenue Recognition</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://http/20230131/role/statement-note-11-revenue-recognition</Role>
      <ShortName>Note 11 - Revenue Recognition</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>17</Position>
    </Report>
    <Report instance="occ20230131_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R18.htm</HtmlFileName>
      <LongName>017 - Disclosure - Note 12 - Contingencies</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://http/20230131/role/statement-note-12-contingencies</Role>
      <ShortName>Note 12 - Contingencies</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>18</Position>
    </Report>
    <Report instance="occ20230131_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R19.htm</HtmlFileName>
      <LongName>018 - Disclosure - Note 13 - New Accounting Standards Not Yet Adopted</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://http/20230131/role/statement-note-13-new-accounting-standards-not-yet-adopted</Role>
      <ShortName>Note 13 - New Accounting Standards Not Yet Adopted</ShortName>
      <MenuCategory>Notes</MenuCategory>
      <Position>19</Position>
    </Report>
    <Report instance="occ20230131_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R20.htm</HtmlFileName>
      <LongName>019 - Disclosure - Note 3 - Allowance for Doubtful Accounts for Trade Accounts Receivable (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://http/20230131/role/statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-tables</Role>
      <ShortName>Note 3 - Allowance for Doubtful Accounts for Trade Accounts Receivable (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://http/20230131/role/statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable</ParentRole>
      <Position>20</Position>
    </Report>
    <Report instance="occ20230131_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R21.htm</HtmlFileName>
      <LongName>020 - Disclosure - Note 4 - Inventories (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://http/20230131/role/statement-note-4-inventories-tables</Role>
      <ShortName>Note 4 - Inventories (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://http/20230131/role/statement-note-4-inventories</ParentRole>
      <Position>21</Position>
    </Report>
    <Report instance="occ20230131_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R22.htm</HtmlFileName>
      <LongName>021 - Disclosure - Note 5 - Product Warranties (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://http/20230131/role/statement-note-5-product-warranties-tables</Role>
      <ShortName>Note 5 - Product Warranties (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://http/20230131/role/statement-note-5-product-warranties</ParentRole>
      <Position>22</Position>
    </Report>
    <Report instance="occ20230131_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R23.htm</HtmlFileName>
      <LongName>022 - Disclosure - Note 6 - Long-term Debt and Notes Payable (Tables)</LongName>
      <ReportType>Notes</ReportType>
      <Role>http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-tables</Role>
      <ShortName>Note 6 - Long-term Debt and Notes Payable (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-</ParentRole>
      <Position>23</Position>
    </Report>
    <Report instance="occ20230131_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R24.htm</HtmlFileName>
      <LongName>023 - Disclosure - Note 7 - Leases (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://http/20230131/role/statement-note-7-leases-tables</Role>
      <ShortName>Note 7 - Leases (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://http/20230131/role/statement-note-7-leases</ParentRole>
      <Position>24</Position>
    </Report>
    <Report instance="occ20230131_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R25.htm</HtmlFileName>
      <LongName>024 - Disclosure - Note 9 - Net Income (Loss) Per Share (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://http/20230131/role/statement-note-9-net-income-loss-per-share-tables</Role>
      <ShortName>Note 9 - Net Income (Loss) Per Share (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://http/20230131/role/statement-note-9-net-income-loss-per-share</ParentRole>
      <Position>25</Position>
    </Report>
    <Report instance="occ20230131_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R26.htm</HtmlFileName>
      <LongName>025 - Disclosure - Note 11 - Revenue Recognition (Tables)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://http/20230131/role/statement-note-11-revenue-recognition-tables</Role>
      <ShortName>Note 11 - Revenue Recognition (Tables)</ShortName>
      <MenuCategory>Tables</MenuCategory>
      <ParentRole>http://http/20230131/role/statement-note-11-revenue-recognition</ParentRole>
      <Position>26</Position>
    </Report>
    <Report instance="occ20230131_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R27.htm</HtmlFileName>
      <LongName>026 - Disclosure - Note 2 - Stock Incentive Plans and Other Share-based Compensation (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://http/20230131/role/statement-note-2-stock-incentive-plans-and-other-sharebased-compensation-details-textual</Role>
      <ShortName>Note 2 - Stock Incentive Plans and Other Share-based Compensation (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://http/20230131/role/statement-note-2-stock-incentive-plans-and-other-sharebased-compensation</ParentRole>
      <Position>27</Position>
    </Report>
    <Report instance="occ20230131_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R28.htm</HtmlFileName>
      <LongName>027 - Disclosure - Note 3 - Allowance for Doubtful Accounts for Trade Accounts Receivable - Summary of Changes in the Allowance for Doubtful Accounts for Trade Accounts Receivable (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://http/20230131/role/statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-summary-of-changes-in-the-allowance-for-doubtful-accounts-for-trade-accounts-receivable-details</Role>
      <ShortName>Note 3 - Allowance for Doubtful Accounts for Trade Accounts Receivable - Summary of Changes in the Allowance for Doubtful Accounts for Trade Accounts Receivable (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>28</Position>
    </Report>
    <Report instance="occ20230131_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R29.htm</HtmlFileName>
      <LongName>028 - Disclosure - Note 4 - Inventories - Components of Inventories (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://http/20230131/role/statement-note-4-inventories-components-of-inventories-details</Role>
      <ShortName>Note 4 - Inventories - Components of Inventories (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>29</Position>
    </Report>
    <Report instance="occ20230131_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R30.htm</HtmlFileName>
      <LongName>029 - Disclosure - Note 5 - Product Warranties (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://http/20230131/role/statement-note-5-product-warranties-details-textual</Role>
      <ShortName>Note 5 - Product Warranties (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://http/20230131/role/statement-note-5-product-warranties-tables</ParentRole>
      <Position>30</Position>
    </Report>
    <Report instance="occ20230131_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R31.htm</HtmlFileName>
      <LongName>030 - Disclosure - Note 5 - Product Warranties - Changes in Accrual for Product Warranties (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://http/20230131/role/statement-note-5-product-warranties-changes-in-accrual-for-product-warranties-details</Role>
      <ShortName>Note 5 - Product Warranties - Changes in Accrual for Product Warranties (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>31</Position>
    </Report>
    <Report instance="occ20230131_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R32.htm</HtmlFileName>
      <LongName>031 - Disclosure - Note 6 - Long-term Debt and Notes Payable (Details Textual)</LongName>
      <ReportType>Notes</ReportType>
      <Role>http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-details-textual</Role>
      <ShortName>Note 6 - Long-term Debt and Notes Payable (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-tables</ParentRole>
      <Position>32</Position>
    </Report>
    <Report instance="occ20230131_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R33.htm</HtmlFileName>
      <LongName>032 - Disclosure - Note 6 - Long-term Debt and Notes Payable - Long-term Debt (Details)</LongName>
      <ReportType>Notes</ReportType>
      <Role>http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details</Role>
      <ShortName>Note 6 - Long-term Debt and Notes Payable - Long-term Debt (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>33</Position>
    </Report>
    <Report instance="occ20230131_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R34.htm</HtmlFileName>
      <LongName>033 - Disclosure - Note 6 - Long-term Debt and Notes Payable - Long-term Debt (Details) (Parentheticals)</LongName>
      <ReportType>Notes</ReportType>
      <Role>http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details-parentheticals</Role>
      <ShortName>Note 6 - Long-term Debt and Notes Payable - Long-term Debt (Details) (Parentheticals)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>34</Position>
    </Report>
    <Report instance="occ20230131_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R35.htm</HtmlFileName>
      <LongName>034 - Disclosure - Note 7 - Leases (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://http/20230131/role/statement-note-7-leases-details-textual</Role>
      <ShortName>Note 7 - Leases (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://http/20230131/role/statement-note-7-leases-tables</ParentRole>
      <Position>35</Position>
    </Report>
    <Report instance="occ20230131_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R36.htm</HtmlFileName>
      <LongName>035 - Disclosure - Note 7 - Leases - Future Payments Due (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://http/20230131/role/statement-note-7-leases-future-payments-due-details</Role>
      <ShortName>Note 7 - Leases - Future Payments Due (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>36</Position>
    </Report>
    <Report instance="occ20230131_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R37.htm</HtmlFileName>
      <LongName>036 - Disclosure - Note 9 - Net Income (Loss) Per Share (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://http/20230131/role/statement-note-9-net-income-loss-per-share-details-textual</Role>
      <ShortName>Note 9 - Net Income (Loss) Per Share (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://http/20230131/role/statement-note-9-net-income-loss-per-share-tables</ParentRole>
      <Position>37</Position>
    </Report>
    <Report instance="occ20230131_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R38.htm</HtmlFileName>
      <LongName>037 - Disclosure - Note 9 - Net Income (Loss) Per Share - Components of Reconciliation of Numerators and Denominators Net Loss Per Share (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://http/20230131/role/statement-note-9-net-income-loss-per-share-components-of-reconciliation-of-numerators-and-denominators-net-loss-per-share-details</Role>
      <ShortName>Note 9 - Net Income (Loss) Per Share - Components of Reconciliation of Numerators and Denominators Net Loss Per Share (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://http/20230131/role/statement-note-9-net-income-loss-per-share-tables</ParentRole>
      <Position>38</Position>
    </Report>
    <Report instance="occ20230131_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R39.htm</HtmlFileName>
      <LongName>038 - Disclosure - Note 10 - Segment Information and Business and Credit Concentrations (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://http/20230131/role/statement-note-10-segment-information-and-business-and-credit-concentrations-details-textual</Role>
      <ShortName>Note 10 - Segment Information and Business and Credit Concentrations (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://http/20230131/role/statement-note-10-segment-information-and-business-and-credit-concentrations</ParentRole>
      <Position>39</Position>
    </Report>
    <Report instance="occ20230131_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R40.htm</HtmlFileName>
      <LongName>039 - Disclosure - Note 11 - Revenue Recognition (Details Textual)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://http/20230131/role/statement-note-11-revenue-recognition-details-textual</Role>
      <ShortName>Note 11 - Revenue Recognition (Details Textual)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <ParentRole>http://http/20230131/role/statement-note-11-revenue-recognition-tables</ParentRole>
      <Position>40</Position>
    </Report>
    <Report instance="occ20230131_10q.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R41.htm</HtmlFileName>
      <LongName>040 - Disclosure - Note 11 - Revenue Recognition - Revenue Attributed to United States and All Other Countries (Details)</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://http/20230131/role/statement-note-11-revenue-recognition-revenue-attributed-to-united-states-and-all-other-countries-details</Role>
      <ShortName>Note 11 - Revenue Recognition - Revenue Attributed to United States and All Other Countries (Details)</ShortName>
      <MenuCategory>Details</MenuCategory>
      <Position>41</Position>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <LongName>All Reports</LongName>
      <ReportType>Book</ReportType>
      <ShortName>All Reports</ShortName>
    </Report>
  </MyReports>
  <Logs>
    <Log type="Warning">[ix-0514-Hidden-Fact-Eligible-For-Transform] WARN: 10 fact(s) appearing in ix:hidden were eligible for transformation: occ:ConcentrationRiskNumberOfCustomers, occ:DebtInstrumentTermExtensions, us-gaap:PreferredStockNoParValue, us-gaap:PreferredStockSharesIssued, us-gaap:PreferredStockSharesOutstanding, us-gaap:RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability -  occ20230131_10q.htm 13, 14, 15, 16, 17, 18, 19, 20, 21, 22</Log>
  </Logs>
  <InputFiles>
    <File doctype="10-Q" original="occ20230131_10q.htm">occ20230131_10q.htm</File>
    <File>ex_483933.htm</File>
    <File>ex_483934.htm</File>
    <File>ex_483935.htm</File>
    <File>ex_483936.htm</File>
    <File>ex_483937.htm</File>
    <File>occ-20230131.xsd</File>
    <File>occ-20230131_cal.xml</File>
    <File>occ-20230131_def.xml</File>
    <File>occ-20230131_lab.xml</File>
    <File>occ-20230131_pre.xml</File>
  </InputFiles>
  <SupplementalFiles/>
  <BaseTaxonomies>
    <BaseTaxonomy items="338">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>60
<FILENAME>MetaLinks.json
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
{
 "instance": {
  "occ20230131_10q.htm": {
   "axisCustom": 0,
   "axisStandard": 15,
   "baseTaxonomies": {
    "http://fasb.org/us-gaap/2022": 338,
    "http://xbrl.sec.gov/dei/2022": 29
   },
   "contextCount": 62,
   "dts": {
    "calculationLink": {
     "local": [
      "occ-20230131_cal.xml"
     ]
    },
    "definitionLink": {
     "local": [
      "occ-20230131_def.xml"
     ]
    },
    "inline": {
     "local": [
      "occ20230131_10q.htm"
     ]
    },
    "labelLink": {
     "local": [
      "occ-20230131_lab.xml"
     ]
    },
    "presentationLink": {
     "local": [
      "occ-20230131_pre.xml"
     ]
    },
    "schema": {
     "local": [
      "occ-20230131.xsd"
     ],
     "remote": [
      "http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xl-2003-12-31.xsd",
      "http://www.xbrl.org/2003/xlink-2003-12-31.xsd",
      "http://www.xbrl.org/2005/xbrldt-2005.xsd",
      "http://www.xbrl.org/2006/ref-2006-02-27.xsd",
      "http://www.xbrl.org/lrr/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/currency/2022/currency-2022.xsd",
      "https://xbrl.sec.gov/dei/2022/dei-2022.xsd",
      "https://xbrl.sec.gov/exch/2022/exch-2022.xsd",
      "https://xbrl.sec.gov/naics/2022/naics-2022.xsd",
      "https://xbrl.sec.gov/sic/2022/sic-2022.xsd",
      "https://xbrl.sec.gov/stpr/2022/stpr-2022.xsd"
     ]
    }
   },
   "elementCount": 291,
   "entityCount": 1,
   "hidden": {
    "http://fasb.org/us-gaap/2022": 7,
    "http://http/20230131": 3,
    "http://xbrl.sec.gov/dei/2022": 5,
    "total": 15
   },
   "keyCustom": 12,
   "keyStandard": 185,
   "memberCustom": 12,
   "memberStandard": 13,
   "nsprefix": "occ",
   "nsuri": "http://http/20230131",
   "report": {
    "R1": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "div",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:DocumentType",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "document",
     "isDefault": "true",
     "longName": "000 - Document - Document And Entity Information",
     "menuCat": "Cover",
     "order": "1",
     "role": "http://http/20230131/role/statement-document-and-entity-information",
     "shortName": "Document And Entity Information",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "div",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "dei:DocumentType",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R10": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InventoryDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "009 - Disclosure - Note 4 - Inventories",
     "menuCat": "Notes",
     "order": "10",
     "role": "http://http/20230131/role/statement-note-4-inventories",
     "shortName": "Note 4 - Inventories",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:InventoryDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R11": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ProductWarrantyDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "010 - Disclosure - Note 5 - Product Warranties",
     "menuCat": "Notes",
     "order": "11",
     "role": "http://http/20230131/role/statement-note-5-product-warranties",
     "shortName": "Note 5 - Product Warranties",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ProductWarrantyDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R12": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LongTermDebtTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "011 - Disclosure - Note 6 - Long-term Debt and Notes Payable",
     "menuCat": "Notes",
     "order": "12",
     "role": "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-",
     "shortName": "Note 6 - Long-term Debt and Notes Payable",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:LongTermDebtTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R13": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "occ:LesseeOperatingAndFinanceLeasesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "012 - Disclosure - Note 7 - Leases",
     "menuCat": "Notes",
     "order": "13",
     "role": "http://http/20230131/role/statement-note-7-leases",
     "shortName": "Note 7 - Leases",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "occ:LesseeOperatingAndFinanceLeasesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R14": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FairValueDisclosuresTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "013 - Disclosure - Note 8 - Fair Value Measurements",
     "menuCat": "Notes",
     "order": "14",
     "role": "http://http/20230131/role/statement-note-8-fair-value-measurements",
     "shortName": "Note 8 - Fair Value Measurements",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:FairValueDisclosuresTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R15": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "014 - Disclosure - Note 9 - Net Income (Loss) Per Share",
     "menuCat": "Notes",
     "order": "15",
     "role": "http://http/20230131/role/statement-note-9-net-income-loss-per-share",
     "shortName": "Note 9 - Net Income (Loss) Per Share",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:EarningsPerShareTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R16": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ConcentrationRiskDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "015 - Disclosure - Note 10 - Segment Information and Business and Credit Concentrations",
     "menuCat": "Notes",
     "order": "16",
     "role": "http://http/20230131/role/statement-note-10-segment-information-and-business-and-credit-concentrations",
     "shortName": "Note 10 - Segment Information and Business and Credit Concentrations",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ConcentrationRiskDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R17": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "016 - Disclosure - Note 11 - Revenue Recognition",
     "menuCat": "Notes",
     "order": "17",
     "role": "http://http/20230131/role/statement-note-11-revenue-recognition",
     "shortName": "Note 11 - Revenue Recognition",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueFromContractWithCustomerTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R18": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "017 - Disclosure - Note 12 - Contingencies",
     "menuCat": "Notes",
     "order": "18",
     "role": "http://http/20230131/role/statement-note-12-contingencies",
     "shortName": "Note 12 - Contingencies",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R19": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "018 - Disclosure - Note 13 - New Accounting Standards Not Yet Adopted",
     "menuCat": "Notes",
     "order": "19",
     "role": "http://http/20230131/role/statement-note-13-new-accounting-standards-not-yet-adopted",
     "shortName": "Note 13 - New Accounting Standards Not Yet Adopted",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R2": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "i_2023-01-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "001 - Statement - Condensed Consolidated Balance Sheets (Unaudited)",
     "menuCat": "Statements",
     "order": "2",
     "role": "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited",
     "shortName": "Condensed Consolidated Balance Sheets (Unaudited)",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "i_2023-01-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R20": {
     "firstAnchor": {
      "ancestors": [
       "occ:AllowanceForDoubtfulAccountsForTradeAccountsReceivableDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "occ:SummaryOfChangesInAllowanceForDoubtfulAccountsForTradeAccountsReceivableTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "019 - Disclosure - Note 3 - Allowance for Doubtful Accounts for Trade Accounts Receivable (Tables)",
     "menuCat": "Tables",
     "order": "20",
     "role": "http://http/20230131/role/statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-tables",
     "shortName": "Note 3 - Allowance for Doubtful Accounts for Trade Accounts Receivable (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "occ:AllowanceForDoubtfulAccountsForTradeAccountsReceivableDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "occ:SummaryOfChangesInAllowanceForDoubtfulAccountsForTradeAccountsReceivableTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R21": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:InventoryDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "020 - Disclosure - Note 4 - Inventories (Tables)",
     "menuCat": "Tables",
     "order": "21",
     "role": "http://http/20230131/role/statement-note-4-inventories-tables",
     "shortName": "Note 4 - Inventories (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:InventoryDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R22": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:ProductWarrantyDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "021 - Disclosure - Note 5 - Product Warranties (Tables)",
     "menuCat": "Tables",
     "order": "22",
     "role": "http://http/20230131/role/statement-note-5-product-warranties-tables",
     "shortName": "Note 5 - Product Warranties (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:ProductWarrantyDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R23": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:LongTermDebtTextBlock",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfDebtTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "022 - Disclosure - Note 6 - Long-term Debt and Notes Payable (Tables)",
     "menuCat": "Tables",
     "order": "23",
     "role": "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-tables",
     "shortName": "Note 6 - Long-term Debt and Notes Payable (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:LongTermDebtTextBlock",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfDebtTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R24": {
     "firstAnchor": {
      "ancestors": [
       "occ:LesseeOperatingAndFinanceLeasesDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "occ:LesseeLeaseLiabilityMaturityTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "023 - Disclosure - Note 7 - Leases (Tables)",
     "menuCat": "Tables",
     "order": "24",
     "role": "http://http/20230131/role/statement-note-7-leases-tables",
     "shortName": "Note 7 - Leases (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "occ:LesseeOperatingAndFinanceLeasesDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "occ:LesseeLeaseLiabilityMaturityTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R25": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:EarningsPerShareTextBlock",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "024 - Disclosure - Note 9 - Net Income (Loss) Per Share (Tables)",
     "menuCat": "Tables",
     "order": "25",
     "role": "http://http/20230131/role/statement-note-9-net-income-loss-per-share-tables",
     "shortName": "Note 9 - Net Income (Loss) Per Share (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:EarningsPerShareTextBlock",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R26": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueFromExternalCustomersByGeographicAreasTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "025 - Disclosure - Note 11 - Revenue Recognition (Tables)",
     "menuCat": "Tables",
     "order": "26",
     "role": "http://http/20230131/role/statement-note-11-revenue-recognition-tables",
     "shortName": "Note 11 - Revenue Recognition (Tables)",
     "subGroupType": "tables",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:RevenueFromExternalCustomersByGeographicAreasTableTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R27": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31_AwardTypeAxis-RestrictedStockMember",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Share",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "026 - Disclosure - Note 2 - Stock Incentive Plans and Other Share-based Compensation (Details Textual)",
     "menuCat": "Details",
     "order": "27",
     "role": "http://http/20230131/role/statement-note-2-stock-incentive-plans-and-other-sharebased-compensation-details-textual",
     "shortName": "Note 2 - Stock Incentive Plans and Other Share-based Compensation (Details Textual)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31_AwardTypeAxis-RestrictedStockMember",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:SharesPaidForTaxWithholdingForShareBasedCompensation",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Share",
      "xsiNil": "false"
     }
    },
    "R28": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "i_2022-10-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "027 - Disclosure - Note 3 - Allowance for Doubtful Accounts for Trade Accounts Receivable - Summary of Changes in the Allowance for Doubtful Accounts for Trade Accounts Receivable (Details)",
     "menuCat": "Details",
     "order": "28",
     "role": "http://http/20230131/role/statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-summary-of-changes-in-the-allowance-for-doubtful-accounts-for-trade-accounts-receivable-details",
     "shortName": "Note 3 - Allowance for Doubtful Accounts for Trade Accounts Receivable - Summary of Changes in the Allowance for Doubtful Accounts for Trade Accounts Receivable (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "occ:SummaryOfChangesInAllowanceForDoubtfulAccountsForTradeAccountsReceivableTableTextBlock",
       "occ:AllowanceForDoubtfulAccountsForTradeAccountsReceivableDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "i_2021-10-31",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R29": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "us-gaap:InventoryDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "i_2023-01-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:InventoryFinishedGoodsNetOfReserves",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "028 - Disclosure - Note 4 - Inventories - Components of Inventories (Details)",
     "menuCat": "Details",
     "order": "29",
     "role": "http://http/20230131/role/statement-note-4-inventories-components-of-inventories-details",
     "shortName": "Note 4 - Inventories - Components of Inventories (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfInventoryCurrentTableTextBlock",
       "us-gaap:InventoryDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "i_2023-01-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:InventoryFinishedGoodsNetOfReserves",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R3": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "i_2023-01-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableCurrent",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "002 - Statement - Condensed Consolidated Balance Sheets (Unaudited) (Parentheticals)",
     "menuCat": "Statements",
     "order": "3",
     "role": "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals",
     "shortName": "Condensed Consolidated Balance Sheets (Unaudited) (Parentheticals)",
     "subGroupType": "parenthetical",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "i_2023-01-31",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:PreferredStockSharesAuthorized",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Share",
      "xsiNil": "false"
     }
    },
    "R30": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock",
       "us-gaap:ProductWarrantyDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "i_2023-01-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:ProductWarrantyAccrual",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "029 - Disclosure - Note 5 - Product Warranties (Details Textual)",
     "menuCat": "Details",
     "order": "30",
     "role": "http://http/20230131/role/statement-note-5-product-warranties-details-textual",
     "shortName": "Note 5 - Product Warranties (Details Textual)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:ProductWarrantyDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:ProductWarrantyExpense",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R31": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock",
       "us-gaap:ProductWarrantyDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "i_2022-10-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:ProductWarrantyAccrual",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "030 - Disclosure - Note 5 - Product Warranties - Changes in Accrual for Product Warranties (Details)",
     "menuCat": "Details",
     "order": "31",
     "role": "http://http/20230131/role/statement-note-5-product-warranties-changes-in-accrual-for-product-warranties-details",
     "shortName": "Note 5 - Product Warranties - Changes in Accrual for Product Warranties (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock",
       "us-gaap:ProductWarrantyDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:ProductWarrantyAccrualWarrantiesIssued",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R32": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "us-gaap:LongTermDebtTextBlock",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "i_2023-01-31_CreditFacilityAxis-RevolvingCreditFacilityMember_LineOfCreditFacilityAxis-PinnacleFinancialPartnersMember",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:LineOfCredit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "031 - Disclosure - Note 6 - Long-term Debt and Notes Payable (Details Textual)",
     "menuCat": "Details",
     "order": "32",
     "role": "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-details-textual",
     "shortName": "Note 6 - Long-term Debt and Notes Payable (Details Textual)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:LongTermDebtTextBlock",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "i_2023-01-31_CreditFacilityAxis-RevolvingCreditFacilityMember_LineOfCreditFacilityAxis-PinnacleFinancialPartnersMember",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:LineOfCredit",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R33": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfDebtTableTextBlock",
       "us-gaap:LongTermDebtTextBlock",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "i_2023-01-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:LongTermDebt",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "032 - Disclosure - Note 6 - Long-term Debt and Notes Payable - Long-term Debt (Details)",
     "menuCat": "Details",
     "order": "33",
     "role": "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details",
     "shortName": "Note 6 - Long-term Debt and Notes Payable - Long-term Debt (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfDebtTableTextBlock",
       "us-gaap:LongTermDebtTextBlock",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "i_2023-01-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:LongTermDebt",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R34": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfDebtTableTextBlock",
       "us-gaap:LongTermDebtTextBlock",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "i_2023-01-31_LongtermDebtTypeAxis-VirginiaRealEstateLoanMember",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:DebtInstrumentFaceAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "033 - Disclosure - Note 6 - Long-term Debt and Notes Payable - Long-term Debt (Details) (Parentheticals)",
     "menuCat": "Details",
     "order": "34",
     "role": "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details-parentheticals",
     "shortName": "Note 6 - Long-term Debt and Notes Payable - Long-term Debt (Details) (Parentheticals)",
     "subGroupType": "parenthetical",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfDebtTableTextBlock",
       "us-gaap:LongTermDebtTextBlock",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "i_2023-01-31_LongtermDebtTypeAxis-VirginiaRealEstateLoanMember",
      "decimals": "-5",
      "first": true,
      "lang": null,
      "name": "us-gaap:DebtInstrumentFaceAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R35": {
     "firstAnchor": {
      "ancestors": [
       "us-gaap:OperatingLeaseExpense",
       "p",
       "occ:LesseeOperatingAndFinanceLeasesDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLeaseExpense",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "034 - Disclosure - Note 7 - Leases (Details Textual)",
     "menuCat": "Details",
     "order": "35",
     "role": "http://http/20230131/role/statement-note-7-leases-details-textual",
     "shortName": "Note 7 - Leases (Details Textual)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "us-gaap:OperatingLeaseExpense",
       "p",
       "occ:LesseeOperatingAndFinanceLeasesDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:OperatingLeaseExpense",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R36": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "occ:LesseeLeaseLiabilityMaturityTableTextBlock",
       "occ:LesseeOperatingAndFinanceLeasesDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "i_2023-01-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "035 - Disclosure - Note 7 - Leases - Future Payments Due (Details)",
     "menuCat": "Details",
     "order": "36",
     "role": "http://http/20230131/role/statement-note-7-leases-future-payments-due-details",
     "shortName": "Note 7 - Leases - Future Payments Due (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "occ:LesseeLeaseLiabilityMaturityTableTextBlock",
       "occ:LesseeOperatingAndFinanceLeasesDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "i_2023-01-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R37": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "us-gaap:EarningsPerShareTextBlock",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2021-11-01_2022-01-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Share",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "036 - Disclosure - Note 9 - Net Income (Loss) Per Share (Details Textual)",
     "menuCat": "Details",
     "order": "37",
     "role": "http://http/20230131/role/statement-note-9-net-income-loss-per-share-details-textual",
     "shortName": "Note 9 - Net Income (Loss) Per Share (Details Textual)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:EarningsPerShareTextBlock",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2021-11-01_2022-01-31",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Share",
      "xsiNil": "false"
     }
    },
    "R38": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:NetIncomeLoss",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "037 - Disclosure - Note 9 - Net Income (Loss) Per Share - Components of Reconciliation of Numerators and Denominators Net Loss Per Share (Details)",
     "menuCat": "Details",
     "order": "38",
     "role": "http://http/20230131/role/statement-note-9-net-income-loss-per-share-components-of-reconciliation-of-numerators-and-denominators-net-loss-per-share-details",
     "shortName": "Note 9 - Net Income (Loss) Per Share - Components of Reconciliation of Numerators and Denominators Net Loss Per Share (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
       "us-gaap:EarningsPerShareTextBlock",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": "INF",
      "lang": null,
      "name": "us-gaap:WeightedAverageNumberOfSharesOutstandingBasic",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Share",
      "xsiNil": "false"
     }
    },
    "R39": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "us-gaap:ConcentrationRiskDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-CustomerOneMember",
      "decimals": "3",
      "first": true,
      "lang": null,
      "name": "us-gaap:ConcentrationRiskPercentage1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Pure",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "038 - Disclosure - Note 10 - Segment Information and Business and Credit Concentrations (Details Textual)",
     "menuCat": "Details",
     "order": "39",
     "role": "http://http/20230131/role/statement-note-10-segment-information-and-business-and-credit-concentrations-details-textual",
     "shortName": "Note 10 - Segment Information and Business and Credit Concentrations (Details Textual)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:ConcentrationRiskDisclosureTextBlock",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31_ConcentrationRiskByBenchmarkAxis-SalesRevenueNetMember_ConcentrationRiskByTypeAxis-CustomerConcentrationRiskMember_MajorCustomersAxis-CustomerOneMember",
      "decimals": "3",
      "first": true,
      "lang": null,
      "name": "us-gaap:ConcentrationRiskPercentage1",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Pure",
      "xsiNil": "false"
     }
    },
    "R4": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "003 - Statement - Condensed Consolidated Statements of Operations (Unaudited)",
     "menuCat": "Statements",
     "order": "4",
     "role": "http://http/20230131/role/statement-condensed-consolidated-statements-of-operations-unaudited-",
     "shortName": "Condensed Consolidated Statements of Operations (Unaudited)",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:CostOfGoodsAndServicesSold",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R40": {
     "firstAnchor": {
      "ancestors": [
       "p",
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "i_2023-01-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:ContractWithCustomerLiability",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "039 - Disclosure - Note 11 - Revenue Recognition (Details Textual)",
     "menuCat": "Details",
     "order": "40",
     "role": "http://http/20230131/role/statement-note-11-revenue-recognition-details-textual",
     "shortName": "Note 11 - Revenue Recognition (Details Textual)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "p",
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "i_2023-01-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:ContractWithCustomerLiability",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R41": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "040 - Disclosure - Note 11 - Revenue Recognition - Revenue Attributed to United States and All Other Countries (Details)",
     "menuCat": "Details",
     "order": "41",
     "role": "http://http/20230131/role/statement-note-11-revenue-recognition-revenue-attributed-to-united-states-and-all-other-countries-details",
     "shortName": "Note 11 - Revenue Recognition - Revenue Attributed to United States and All Other Countries (Details)",
     "subGroupType": "details",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "us-gaap:RevenueFromExternalCustomersByGeographicAreasTableTextBlock",
       "us-gaap:RevenueFromContractWithCustomerTextBlock",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2021-11-01_2022-10-31",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R5": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "i_2021-10-31_StatementEquityComponentsAxis-CommonStockMember",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:SharesOutstanding",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Share",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "004 - Statement - Condensed Consolidated Statements of Shareholders' Equity (Unaudited)",
     "menuCat": "Statements",
     "order": "5",
     "role": "http://http/20230131/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited",
     "shortName": "Condensed Consolidated Statements of Shareholders' Equity (Unaudited)",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "i_2021-10-31_StatementEquityComponentsAxis-CommonStockMember",
      "decimals": "INF",
      "first": true,
      "lang": null,
      "name": "us-gaap:SharesOutstanding",
      "reportCount": 1,
      "unique": true,
      "unitRef": "Share",
      "xsiNil": "false"
     }
    },
    "R6": {
     "firstAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": "0",
      "first": true,
      "lang": null,
      "name": "us-gaap:NetIncomeLoss",
      "reportCount": 1,
      "unitRef": "USD",
      "xsiNil": "false"
     },
     "groupType": "statement",
     "isDefault": "false",
     "longName": "005 - Statement - Condensed Consolidated Statements of Cash Flows (Unaudited)",
     "menuCat": "Statements",
     "order": "6",
     "role": "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited",
     "shortName": "Condensed Consolidated Statements of Cash Flows (Unaudited)",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "td",
       "tr",
       "tbody",
       "table",
       "div",
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": "0",
      "lang": null,
      "name": "us-gaap:DepreciationDepletionAndAmortization",
      "reportCount": 1,
      "unique": true,
      "unitRef": "USD",
      "xsiNil": "false"
     }
    },
    "R7": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "006 - Disclosure - Note 1 - General",
     "menuCat": "Notes",
     "order": "7",
     "role": "http://http/20230131/role/statement-note-1-general",
     "shortName": "Note 1 - General",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R8": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "007 - Disclosure - Note 2 - Stock Incentive Plans and Other Share-based Compensation",
     "menuCat": "Notes",
     "order": "8",
     "role": "http://http/20230131/role/statement-note-2-stock-incentive-plans-and-other-sharebased-compensation",
     "shortName": "Note 2 - Stock Incentive Plans and Other Share-based Compensation",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    },
    "R9": {
     "firstAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "occ:AllowanceForDoubtfulAccountsForTradeAccountsReceivableDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     },
     "groupType": "disclosure",
     "isDefault": "false",
     "longName": "008 - Disclosure - Note 3 - Allowance for Doubtful Accounts for Trade Accounts Receivable",
     "menuCat": "Notes",
     "order": "9",
     "role": "http://http/20230131/role/statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable",
     "shortName": "Note 3 - Allowance for Doubtful Accounts for Trade Accounts Receivable",
     "subGroupType": "",
     "uniqueAnchor": {
      "ancestors": [
       "body",
       "html"
      ],
      "baseRef": "occ20230131_10q.htm",
      "contextRef": "d_2022-11-01_2023-01-31",
      "decimals": null,
      "first": true,
      "lang": "en-US",
      "name": "occ:AllowanceForDoubtfulAccountsForTradeAccountsReceivableDisclosureTextBlock",
      "reportCount": 1,
      "unique": true,
      "unitRef": null,
      "xsiNil": "false"
     }
    }
   },
   "segmentCount": 25,
   "tag": {
    "country_US": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "UNITED STATES"
       }
      }
     },
     "localname": "US",
     "nsuri": "http://xbrl.sec.gov/country/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-11-revenue-recognition",
      "http://http/20230131/role/statement-note-11-revenue-recognition-revenue-attributed-to-united-states-and-all-other-countries-details"
     ],
     "xbrltype": "domainItemType"
    },
    "dei_AmendmentFlag": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.",
        "label": "Amendment Flag"
       }
      }
     },
     "localname": "AmendmentFlag",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://http/20230131/role/statement-document-and-entity-information"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_CityAreaCode": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Area code of city",
        "label": "dei_CityAreaCode",
        "terseLabel": "City Area Code"
       }
      }
     },
     "localname": "CityAreaCode",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://http/20230131/role/statement-document-and-entity-information"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_CurrentFiscalYearEndDate": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "End date of current fiscal year in the format --MM-DD.",
        "label": "Current Fiscal Year End Date"
       }
      }
     },
     "localname": "CurrentFiscalYearEndDate",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://http/20230131/role/statement-document-and-entity-information"
     ],
     "xbrltype": "gMonthDayItemType"
    },
    "dei_DocumentFiscalPeriodFocus": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Fiscal period values are FY, Q1, Q2, and Q3.  1st, 2nd and 3rd quarter 10-Q or 10-QT statements have value Q1, Q2, and Q3 respectively, with 10-K, 10-KT or other fiscal year statements having FY.",
        "label": "Document Fiscal Period Focus"
       }
      }
     },
     "localname": "DocumentFiscalPeriodFocus",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://http/20230131/role/statement-document-and-entity-information"
     ],
     "xbrltype": "fiscalPeriodItemType"
    },
    "dei_DocumentFiscalYearFocus": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "This is focus fiscal year of the document report in YYYY format. For a 2006 annual report, which may also provide financial information from prior periods, fiscal 2006 should be given as the fiscal year focus. Example: 2006.",
        "label": "Document Fiscal Year Focus"
       }
      }
     },
     "localname": "DocumentFiscalYearFocus",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://http/20230131/role/statement-document-and-entity-information"
     ],
     "xbrltype": "gYearItemType"
    },
    "dei_DocumentInformationLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Document Information [Line Items]"
       }
      }
     },
     "localname": "DocumentInformationLineItems",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://http/20230131/role/statement-document-and-entity-information"
     ],
     "xbrltype": "stringItemType"
    },
    "dei_DocumentInformationTable": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Container to support the formal attachment of each official or unofficial, public or private document as part of a submission package.",
        "label": "Document Information [Table]"
       }
      }
     },
     "localname": "DocumentInformationTable",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "xbrltype": "stringItemType"
    },
    "dei_DocumentPeriodEndDate": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "For the EDGAR submission types of Form 8-K: the date of the report, the date of the earliest event reported; for the EDGAR submission types of Form N-1A: the filing date; for all other submission types: the end of the reporting or transition period.  The format of the date is YYYY-MM-DD.",
        "label": "dei_DocumentPeriodEndDate",
        "terseLabel": "Document Period End Date"
       }
      }
     },
     "localname": "DocumentPeriodEndDate",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://http/20230131/role/statement-document-and-entity-information"
     ],
     "xbrltype": "dateItemType"
    },
    "dei_DocumentQuarterlyReport": {
     "auth_ref": [
      "r373"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true only for a form used as an quarterly report.",
        "label": "dei_DocumentQuarterlyReport",
        "terseLabel": "Document Quarterly Report"
       }
      }
     },
     "localname": "DocumentQuarterlyReport",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://http/20230131/role/statement-document-and-entity-information"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_DocumentTransitionReport": {
     "auth_ref": [
      "r374"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true only for a form used as a transition report.",
        "label": "dei_DocumentTransitionReport",
        "terseLabel": "Document Transition Report"
       }
      }
     },
     "localname": "DocumentTransitionReport",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://http/20230131/role/statement-document-and-entity-information"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_DocumentType": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'.",
        "label": "dei_DocumentType",
        "terseLabel": "Document Type"
       }
      }
     },
     "localname": "DocumentType",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://http/20230131/role/statement-document-and-entity-information"
     ],
     "xbrltype": "submissionTypeItemType"
    },
    "dei_EntityAddressAddressLine1": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Address Line 1 such as Attn, Building Name, Street Name",
        "label": "dei_EntityAddressAddressLine1",
        "terseLabel": "Entity Address, Address Line One"
       }
      }
     },
     "localname": "EntityAddressAddressLine1",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://http/20230131/role/statement-document-and-entity-information"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressCityOrTown": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Name of the City or Town",
        "label": "dei_EntityAddressCityOrTown",
        "terseLabel": "Entity Address, City or Town"
       }
      }
     },
     "localname": "EntityAddressCityOrTown",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://http/20230131/role/statement-document-and-entity-information"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressPostalZipCode": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Code for the postal or zip code",
        "label": "dei_EntityAddressPostalZipCode",
        "terseLabel": "Entity Address, Postal Zip Code"
       }
      }
     },
     "localname": "EntityAddressPostalZipCode",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://http/20230131/role/statement-document-and-entity-information"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityAddressStateOrProvince": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Name of the state or province.",
        "label": "dei_EntityAddressStateOrProvince",
        "terseLabel": "Entity Address, State or Province"
       }
      }
     },
     "localname": "EntityAddressStateOrProvince",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://http/20230131/role/statement-document-and-entity-information"
     ],
     "xbrltype": "stateOrProvinceItemType"
    },
    "dei_EntityCentralIndexKey": {
     "auth_ref": [
      "r371"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.",
        "label": "Entity Central Index Key"
       }
      }
     },
     "localname": "EntityCentralIndexKey",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://http/20230131/role/statement-document-and-entity-information"
     ],
     "xbrltype": "centralIndexKeyItemType"
    },
    "dei_EntityCommonStockSharesOutstanding": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument.",
        "label": "dei_EntityCommonStockSharesOutstanding",
        "terseLabel": "Entity Common Stock, Shares Outstanding (in shares)"
       }
      }
     },
     "localname": "EntityCommonStockSharesOutstanding",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://http/20230131/role/statement-document-and-entity-information"
     ],
     "xbrltype": "sharesItemType"
    },
    "dei_EntityCurrentReportingStatus": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure.",
        "label": "dei_EntityCurrentReportingStatus",
        "terseLabel": "Entity Current Reporting Status"
       }
      }
     },
     "localname": "EntityCurrentReportingStatus",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://http/20230131/role/statement-document-and-entity-information"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "All the names of the entities being reported upon in a document. Any legal structure used to conduct activities or to hold assets. Some examples of such structures are corporations, partnerships, limited liability companies, grantor trusts, and other trusts. This item does not include business and geographical segments which are included in the geographical or business segments domains.",
        "label": "Entity [Domain]"
       }
      }
     },
     "localname": "EntityDomain",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited",
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals",
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited",
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-operations-unaudited-",
      "http://http/20230131/role/statement-document-and-entity-information",
      "http://http/20230131/role/statement-note-1-general",
      "http://http/20230131/role/statement-note-10-segment-information-and-business-and-credit-concentrations",
      "http://http/20230131/role/statement-note-10-segment-information-and-business-and-credit-concentrations-details-textual",
      "http://http/20230131/role/statement-note-11-revenue-recognition",
      "http://http/20230131/role/statement-note-11-revenue-recognition-details-textual",
      "http://http/20230131/role/statement-note-11-revenue-recognition-revenue-attributed-to-united-states-and-all-other-countries-details",
      "http://http/20230131/role/statement-note-11-revenue-recognition-tables",
      "http://http/20230131/role/statement-note-12-contingencies",
      "http://http/20230131/role/statement-note-13-new-accounting-standards-not-yet-adopted",
      "http://http/20230131/role/statement-note-2-stock-incentive-plans-and-other-sharebased-compensation",
      "http://http/20230131/role/statement-note-2-stock-incentive-plans-and-other-sharebased-compensation-details-textual",
      "http://http/20230131/role/statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable",
      "http://http/20230131/role/statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-summary-of-changes-in-the-allowance-for-doubtful-accounts-for-trade-accounts-receivable-details",
      "http://http/20230131/role/statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-tables",
      "http://http/20230131/role/statement-note-4-inventories",
      "http://http/20230131/role/statement-note-4-inventories-components-of-inventories-details",
      "http://http/20230131/role/statement-note-4-inventories-tables",
      "http://http/20230131/role/statement-note-5-product-warranties",
      "http://http/20230131/role/statement-note-5-product-warranties-changes-in-accrual-for-product-warranties-details",
      "http://http/20230131/role/statement-note-5-product-warranties-details-textual",
      "http://http/20230131/role/statement-note-5-product-warranties-tables",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-details-textual",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details-parentheticals",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-tables",
      "http://http/20230131/role/statement-note-7-leases",
      "http://http/20230131/role/statement-note-7-leases-details-textual",
      "http://http/20230131/role/statement-note-7-leases-future-payments-due-details",
      "http://http/20230131/role/statement-note-7-leases-tables",
      "http://http/20230131/role/statement-note-8-fair-value-measurements",
      "http://http/20230131/role/statement-note-9-net-income-loss-per-share",
      "http://http/20230131/role/statement-note-9-net-income-loss-per-share-components-of-reconciliation-of-numerators-and-denominators-net-loss-per-share-details",
      "http://http/20230131/role/statement-note-9-net-income-loss-per-share-details-textual",
      "http://http/20230131/role/statement-note-9-net-income-loss-per-share-tables"
     ],
     "xbrltype": "domainItemType"
    },
    "dei_EntityEmergingGrowthCompany": {
     "auth_ref": [
      "r371"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate if registrant meets the emerging growth company criteria.",
        "label": "Entity Emerging Growth Company"
       }
      }
     },
     "localname": "EntityEmergingGrowthCompany",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://http/20230131/role/statement-document-and-entity-information"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntityFileNumber": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen.",
        "label": "dei_EntityFileNumber",
        "terseLabel": "Entity File Number"
       }
      }
     },
     "localname": "EntityFileNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://http/20230131/role/statement-document-and-entity-information"
     ],
     "xbrltype": "fileNumberItemType"
    },
    "dei_EntityFilerCategory": {
     "auth_ref": [
      "r371"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure.",
        "label": "Entity Filer Category"
       }
      }
     },
     "localname": "EntityFilerCategory",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://http/20230131/role/statement-document-and-entity-information"
     ],
     "xbrltype": "filerCategoryItemType"
    },
    "dei_EntityIncorporationStateCountryCode": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Two-character EDGAR code representing the state or country of incorporation.",
        "label": "Entity Incorporation, State or Country Code"
       }
      }
     },
     "localname": "EntityIncorporationStateCountryCode",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://http/20230131/role/statement-document-and-entity-information"
     ],
     "xbrltype": "edgarStateCountryItemType"
    },
    "dei_EntityInteractiveDataCurrent": {
     "auth_ref": [
      "r375"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).",
        "label": "dei_EntityInteractiveDataCurrent",
        "terseLabel": "Entity Interactive Data Current"
       }
      }
     },
     "localname": "EntityInteractiveDataCurrent",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://http/20230131/role/statement-document-and-entity-information"
     ],
     "xbrltype": "yesNoItemType"
    },
    "dei_EntityRegistrantName": {
     "auth_ref": [
      "r371"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.",
        "label": "dei_EntityRegistrantName",
        "terseLabel": "Entity Registrant Name"
       }
      }
     },
     "localname": "EntityRegistrantName",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://http/20230131/role/statement-document-and-entity-information"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_EntityShellCompany": {
     "auth_ref": [
      "r371"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act.",
        "label": "dei_EntityShellCompany",
        "terseLabel": "Entity Shell Company"
       }
      }
     },
     "localname": "EntityShellCompany",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://http/20230131/role/statement-document-and-entity-information"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntitySmallBusiness": {
     "auth_ref": [
      "r371"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Indicates that the company is a Smaller Reporting Company (SRC).",
        "label": "Entity Small Business"
       }
      }
     },
     "localname": "EntitySmallBusiness",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://http/20230131/role/statement-document-and-entity-information"
     ],
     "xbrltype": "booleanItemType"
    },
    "dei_EntityTaxIdentificationNumber": {
     "auth_ref": [
      "r371"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.",
        "label": "Entity Tax Identification Number"
       }
      }
     },
     "localname": "EntityTaxIdentificationNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://http/20230131/role/statement-document-and-entity-information"
     ],
     "xbrltype": "employerIdItemType"
    },
    "dei_LegalEntityAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The set of legal entities associated with a report.",
        "label": "Legal Entity [Axis]"
       }
      }
     },
     "localname": "LegalEntityAxis",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited",
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals",
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited",
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-operations-unaudited-",
      "http://http/20230131/role/statement-document-and-entity-information",
      "http://http/20230131/role/statement-note-1-general",
      "http://http/20230131/role/statement-note-10-segment-information-and-business-and-credit-concentrations",
      "http://http/20230131/role/statement-note-10-segment-information-and-business-and-credit-concentrations-details-textual",
      "http://http/20230131/role/statement-note-11-revenue-recognition",
      "http://http/20230131/role/statement-note-11-revenue-recognition-details-textual",
      "http://http/20230131/role/statement-note-11-revenue-recognition-revenue-attributed-to-united-states-and-all-other-countries-details",
      "http://http/20230131/role/statement-note-11-revenue-recognition-tables",
      "http://http/20230131/role/statement-note-12-contingencies",
      "http://http/20230131/role/statement-note-13-new-accounting-standards-not-yet-adopted",
      "http://http/20230131/role/statement-note-2-stock-incentive-plans-and-other-sharebased-compensation",
      "http://http/20230131/role/statement-note-2-stock-incentive-plans-and-other-sharebased-compensation-details-textual",
      "http://http/20230131/role/statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable",
      "http://http/20230131/role/statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-summary-of-changes-in-the-allowance-for-doubtful-accounts-for-trade-accounts-receivable-details",
      "http://http/20230131/role/statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-tables",
      "http://http/20230131/role/statement-note-4-inventories",
      "http://http/20230131/role/statement-note-4-inventories-components-of-inventories-details",
      "http://http/20230131/role/statement-note-4-inventories-tables",
      "http://http/20230131/role/statement-note-5-product-warranties",
      "http://http/20230131/role/statement-note-5-product-warranties-changes-in-accrual-for-product-warranties-details",
      "http://http/20230131/role/statement-note-5-product-warranties-details-textual",
      "http://http/20230131/role/statement-note-5-product-warranties-tables",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-details-textual",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details-parentheticals",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-tables",
      "http://http/20230131/role/statement-note-7-leases",
      "http://http/20230131/role/statement-note-7-leases-details-textual",
      "http://http/20230131/role/statement-note-7-leases-future-payments-due-details",
      "http://http/20230131/role/statement-note-7-leases-tables",
      "http://http/20230131/role/statement-note-8-fair-value-measurements",
      "http://http/20230131/role/statement-note-9-net-income-loss-per-share",
      "http://http/20230131/role/statement-note-9-net-income-loss-per-share-components-of-reconciliation-of-numerators-and-denominators-net-loss-per-share-details",
      "http://http/20230131/role/statement-note-9-net-income-loss-per-share-details-textual",
      "http://http/20230131/role/statement-note-9-net-income-loss-per-share-tables"
     ],
     "xbrltype": "stringItemType"
    },
    "dei_LocalPhoneNumber": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Local phone number for entity.",
        "label": "dei_LocalPhoneNumber",
        "terseLabel": "Local Phone Number"
       }
      }
     },
     "localname": "LocalPhoneNumber",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://http/20230131/role/statement-document-and-entity-information"
     ],
     "xbrltype": "normalizedStringItemType"
    },
    "dei_Security12bTitle": {
     "auth_ref": [
      "r370"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Title of a 12(b) registered security.",
        "label": "Title of 12(b) Security"
       }
      }
     },
     "localname": "Security12bTitle",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://http/20230131/role/statement-document-and-entity-information"
     ],
     "xbrltype": "securityTitleItemType"
    },
    "dei_SecurityExchangeName": {
     "auth_ref": [
      "r372"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Name of the Exchange on which a security is registered.",
        "label": "Security Exchange Name"
       }
      }
     },
     "localname": "SecurityExchangeName",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://http/20230131/role/statement-document-and-entity-information"
     ],
     "xbrltype": "edgarExchangeCodeItemType"
    },
    "dei_TradingSymbol": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Trading symbol of an instrument as listed on an exchange.",
        "label": "Trading Symbol"
       }
      }
     },
     "localname": "TradingSymbol",
     "nsuri": "http://xbrl.sec.gov/dei/2022",
     "presentation": [
      "http://http/20230131/role/statement-document-and-entity-information"
     ],
     "xbrltype": "tradingSymbolItemType"
    },
    "occ_AccountsPayableAndAccruedLiabilitiesCurrentMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information on operating lease liabilities included in accounts payable and accrued expenses.",
        "label": "Accounts Payable and Accrued Liabilities, Current [Member]"
       }
      }
     },
     "localname": "AccountsPayableAndAccruedLiabilitiesCurrentMember",
     "nsuri": "http://http/20230131",
     "presentation": [
      "http://http/20230131/role/statement-note-7-leases",
      "http://http/20230131/role/statement-note-7-leases-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "occ_AllowanceForDoubtfulAccountsForTradeAccountsReceivableDisclosureTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Allowance for doubtful accounts for trade accounts receivable",
        "label": "Allowance for Doubtful Accounts for Trade Accounts Receivable Disclosure [Text Block]"
       }
      }
     },
     "localname": "AllowanceForDoubtfulAccountsForTradeAccountsReceivableDisclosureTextBlock",
     "nsuri": "http://http/20230131",
     "presentation": [
      "http://http/20230131/role/statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable"
     ],
     "xbrltype": "textBlockItemType"
    },
    "occ_ConcentrationRiskNumberOfCustomers": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of customers for a concentration risk benchmark.",
        "label": "occ_ConcentrationRiskNumberOfCustomers",
        "terseLabel": "Concentration Risk, Number of Customers"
       }
      }
     },
     "localname": "ConcentrationRiskNumberOfCustomers",
     "nsuri": "http://http/20230131",
     "presentation": [
      "http://http/20230131/role/statement-note-10-segment-information-and-business-and-credit-concentrations-details-textual"
     ],
     "xbrltype": "integerItemType"
    },
    "occ_CustomerOneMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents information pertaining customer number one.",
        "label": "Customer One [Member]"
       }
      }
     },
     "localname": "CustomerOneMember",
     "nsuri": "http://http/20230131",
     "presentation": [
      "http://http/20230131/role/statement-note-10-segment-information-and-business-and-credit-concentrations",
      "http://http/20230131/role/statement-note-10-segment-information-and-business-and-credit-concentrations-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "occ_DebtInstrumentTermExtensions": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Potential extension to the 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": "occ_DebtInstrumentTermExtensions",
        "terseLabel": "Debt Instrument, Term Extensions (Year)"
       }
      }
     },
     "localname": "DebtInstrumentTermExtensions",
     "nsuri": "http://http/20230131",
     "presentation": [
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-details-textual"
     ],
     "xbrltype": "durationItemType"
    },
    "occ_EmployeesConsultantAndNonemployeeDirectorsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents information related to employees, consultant and non-employee directors.",
        "label": "Employees, Consultant and Non-employee Directors [Member]"
       }
      }
     },
     "localname": "EmployeesConsultantAndNonemployeeDirectorsMember",
     "nsuri": "http://http/20230131",
     "presentation": [
      "http://http/20230131/role/statement-note-2-stock-incentive-plans-and-other-sharebased-compensation",
      "http://http/20230131/role/statement-note-2-stock-incentive-plans-and-other-sharebased-compensation-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "occ_LesseeLeaseLiabilityMaturityTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of future payments for operating and finance lease obligations.",
        "label": "Lessee, Lease Liability, Maturity [Table Text Block]"
       }
      }
     },
     "localname": "LesseeLeaseLiabilityMaturityTableTextBlock",
     "nsuri": "http://http/20230131",
     "presentation": [
      "http://http/20230131/role/statement-note-7-leases-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "occ_LesseeOperatingAndFinanceLeasesDisclosureTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for operating and finance leases of lessee. Includes, but is not limited to, description of lessee's operating and finance lease and maturity analysis of operating and finance lease liability.",
        "label": "Lessee, Operating and Finance Leases Disclosure [Text Block]"
       }
      }
     },
     "localname": "LesseeOperatingAndFinanceLeasesDisclosureTextBlock",
     "nsuri": "http://http/20230131",
     "presentation": [
      "http://http/20230131/role/statement-note-7-leases"
     ],
     "xbrltype": "textBlockItemType"
    },
    "occ_LineOfCreditFacilityAdditionalCapacityForAdvances": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Additional facility for advances.",
        "label": "occ_LineOfCreditFacilityAdditionalCapacityForAdvances",
        "terseLabel": "Line of Credit Facility, Additional Capacity for Advances"
       }
      }
     },
     "localname": "LineOfCreditFacilityAdditionalCapacityForAdvances",
     "nsuri": "http://http/20230131",
     "presentation": [
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "occ_LineOfCreditFacilityPercentOfEligibleAccounts": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percent of aggregate outstanding amount of eligible accounts available for advance.",
        "label": "occ_LineOfCreditFacilityPercentOfEligibleAccounts",
        "terseLabel": "Line of Credit Facility, Percent of Eligible Accounts"
       }
      }
     },
     "localname": "LineOfCreditFacilityPercentOfEligibleAccounts",
     "nsuri": "http://http/20230131",
     "presentation": [
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-details-textual"
     ],
     "xbrltype": "percentItemType"
    },
    "occ_LineOfCreditFacilityPercentOfEligibleInventory": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percent of aggregate outstanding amount of eligible inventory available for advance.",
        "label": "occ_LineOfCreditFacilityPercentOfEligibleInventory",
        "terseLabel": "Line of Credit Facility, Percent of Eligible Inventory"
       }
      }
     },
     "localname": "LineOfCreditFacilityPercentOfEligibleInventory",
     "nsuri": "http://http/20230131",
     "presentation": [
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-details-textual"
     ],
     "xbrltype": "percentItemType"
    },
    "occ_LineOfCreditFacilityRestrictedCapacityForAdvances": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Additional limit to facility for advances.",
        "label": "occ_LineOfCreditFacilityRestrictedCapacityForAdvances",
        "terseLabel": "Line of Credit Facility, Restricted Capacity for Advances"
       }
      }
     },
     "localname": "LineOfCreditFacilityRestrictedCapacityForAdvances",
     "nsuri": "http://http/20230131",
     "presentation": [
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "occ_NorthCarolinaRealEstateLoanMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "North carolina real estate loan [member]",
        "label": "North Carolina Real Estate Loan [Member]"
       }
      }
     },
     "localname": "NorthCarolinaRealEstateLoanMember",
     "nsuri": "http://http/20230131",
     "presentation": [
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details-parentheticals"
     ],
     "xbrltype": "domainItemType"
    },
    "occ_NorthMillCapitalLlcMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents North Mill Capital LLC.",
        "label": "North Mill Capital LLC [Member]"
       }
      }
     },
     "localname": "NorthMillCapitalLlcMember",
     "nsuri": "http://http/20230131",
     "presentation": [
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "occ_NoteToFinancialStatementDetailsTextual": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note To Financial Statement Details Textual"
       }
      }
     },
     "localname": "NoteToFinancialStatementDetailsTextual",
     "nsuri": "http://http/20230131",
     "xbrltype": "stringItemType"
    },
    "occ_NotesToFinancialStatementsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Notes To Financial Statements [Abstract]"
       }
      }
     },
     "localname": "NotesToFinancialStatementsAbstract",
     "nsuri": "http://http/20230131",
     "xbrltype": "stringItemType"
    },
    "occ_OperatingLeaseForOfficeEquipmentMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents operating lease for office equipment.",
        "label": "Operating Lease For Office Equipment [Member]"
       }
      }
     },
     "localname": "OperatingLeaseForOfficeEquipmentMember",
     "nsuri": "http://http/20230131",
     "presentation": [
      "http://http/20230131/role/statement-note-7-leases",
      "http://http/20230131/role/statement-note-7-leases-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "occ_OperatingLeaseForOfficeManufacturingAndWarehouseSpaceInPlanoTexasMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the operating lease arrangement related to the office, manufacturing and warehouse space in Plano, Texas.",
        "label": "Operating Lease for Office, Manufacturing and Warehouse Space in Plano, Texas [Member]"
       }
      }
     },
     "localname": "OperatingLeaseForOfficeManufacturingAndWarehouseSpaceInPlanoTexasMember",
     "nsuri": "http://http/20230131",
     "presentation": [
      "http://http/20230131/role/statement-note-7-leases",
      "http://http/20230131/role/statement-note-7-leases-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "occ_OperatingLeaseForWarehouseSpaceInRoanokeVirginiaMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the operating lease agreement for warehouse space in Roanoke, Virginia.",
        "label": "Operating Lease for Warehouse Space in Roanoke, Virginia [Member]"
       }
      }
     },
     "localname": "OperatingLeaseForWarehouseSpaceInRoanokeVirginiaMember",
     "nsuri": "http://http/20230131",
     "presentation": [
      "http://http/20230131/role/statement-note-7-leases",
      "http://http/20230131/role/statement-note-7-leases-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "occ_OperatingLeaseRightofUseAssetReduction": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of reduction in right of use assets of operating lease.",
        "label": "occ_OperatingLeaseRightofUseAssetReduction",
        "terseLabel": "Operating Lease, Right-of-Use Asset, Reduction"
       }
      }
     },
     "localname": "OperatingLeaseRightofUseAssetReduction",
     "nsuri": "http://http/20230131",
     "presentation": [
      "http://http/20230131/role/statement-note-7-leases-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "occ_PinnacleFinancialPartnersMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents Pinnacle financial partners, a lender to the reporting entity..",
        "label": "Pinnacle Financial Partners [Member]"
       }
      }
     },
     "localname": "PinnacleFinancialPartnersMember",
     "nsuri": "http://http/20230131",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "occ_Plan2017Member": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents 2017 stock incentive plan.",
        "label": "Plan 2017 [Member]"
       }
      }
     },
     "localname": "Plan2017Member",
     "nsuri": "http://http/20230131",
     "presentation": [
      "http://http/20230131/role/statement-note-2-stock-incentive-plans-and-other-sharebased-compensation",
      "http://http/20230131/role/statement-note-2-stock-incentive-plans-and-other-sharebased-compensation-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "occ_RoyaltyRevenueExpense": {
     "auth_ref": [],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-operations-unaudited-": {
       "order": 1.0,
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Net amount of revenue (expense) recognized during the period related to royalty transactions.",
        "label": "occ_RoyaltyRevenueExpense",
        "negatedLabel": "Royalty expense, net"
       }
      }
     },
     "localname": "RoyaltyRevenueExpense",
     "nsuri": "http://http/20230131",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-operations-unaudited-"
     ],
     "xbrltype": "monetaryItemType"
    },
    "occ_SummaryOfChangesInAllowanceForDoubtfulAccountsForTradeAccountsReceivableTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Summary Of Changes In The Allowance For Doubtful Accounts For Trade Accounts Receivable [Table Text Block]",
        "label": "Summary of Changes in the Allowance for Doubtful Accounts for Trade Accounts Receivable [Table Text Block]"
       }
      }
     },
     "localname": "SummaryOfChangesInAllowanceForDoubtfulAccountsForTradeAccountsReceivableTableTextBlock",
     "nsuri": "http://http/20230131",
     "presentation": [
      "http://http/20230131/role/statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "occ_VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Related to the Virginia real estate loan and the North Carolina real estate loan.",
        "label": "Virginia Real Estate Loan and North Carolina Real Estate Loan [Member]"
       }
      }
     },
     "localname": "VirginiaRealEstateLoanAndNorthCarolinaRealEstateLoanMember",
     "nsuri": "http://http/20230131",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "occ_VirginiaRealEstateLoanMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The name of a real estate loan.",
        "label": "Virginia Real Estate Loan [Member]"
       }
      }
     },
     "localname": "VirginiaRealEstateLoanMember",
     "nsuri": "http://http/20230131",
     "presentation": [
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details-parentheticals"
     ],
     "xbrltype": "domainItemType"
    },
    "occ_statement-statement-note-11-revenue-recognition-revenue-attributed-to-united-states-and-all-other-countries-details": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 11 - Revenue Recognition - Revenue Attributed to United States and All Other Countries (Details)"
       }
      }
     },
     "localname": "statement-statement-note-11-revenue-recognition-revenue-attributed-to-united-states-and-all-other-countries-details",
     "nsuri": "http://http/20230131",
     "xbrltype": "stringItemType"
    },
    "occ_statement-statement-note-11-revenue-recognition-tables": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 11 - Revenue Recognition"
       }
      }
     },
     "localname": "statement-statement-note-11-revenue-recognition-tables",
     "nsuri": "http://http/20230131",
     "xbrltype": "stringItemType"
    },
    "occ_statement-statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-summary-of-changes-in-the-allowance-for-doubtful-accounts-for-trade-accounts-receivable-details": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 3 - Allowance for Doubtful Accounts for Trade Accounts Receivable - Summary of Changes in the Allowance for Doubtful Accounts for Trade Accounts Receivable (Details)"
       }
      }
     },
     "localname": "statement-statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-summary-of-changes-in-the-allowance-for-doubtful-accounts-for-trade-accounts-receivable-details",
     "nsuri": "http://http/20230131",
     "xbrltype": "stringItemType"
    },
    "occ_statement-statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-tables": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 3 - Allowance for Doubtful Accounts for Trade Accounts Receivable"
       }
      }
     },
     "localname": "statement-statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-tables",
     "nsuri": "http://http/20230131",
     "xbrltype": "stringItemType"
    },
    "occ_statement-statement-note-4-inventories-components-of-inventories-details": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 4 - Inventories - Components of Inventories (Details)"
       }
      }
     },
     "localname": "statement-statement-note-4-inventories-components-of-inventories-details",
     "nsuri": "http://http/20230131",
     "xbrltype": "stringItemType"
    },
    "occ_statement-statement-note-4-inventories-tables": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 4 - Inventories"
       }
      }
     },
     "localname": "statement-statement-note-4-inventories-tables",
     "nsuri": "http://http/20230131",
     "xbrltype": "stringItemType"
    },
    "occ_statement-statement-note-5-product-warranties-changes-in-accrual-for-product-warranties-details": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 5 - Product Warranties - Changes in Accrual for Product Warranties (Details)"
       }
      }
     },
     "localname": "statement-statement-note-5-product-warranties-changes-in-accrual-for-product-warranties-details",
     "nsuri": "http://http/20230131",
     "xbrltype": "stringItemType"
    },
    "occ_statement-statement-note-5-product-warranties-tables": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 5 - Product Warranties"
       }
      }
     },
     "localname": "statement-statement-note-5-product-warranties-tables",
     "nsuri": "http://http/20230131",
     "xbrltype": "stringItemType"
    },
    "occ_statement-statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 6 - Long-term Debt and Notes Payable - Long-term Debt (Details)"
       }
      }
     },
     "localname": "statement-statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details",
     "nsuri": "http://http/20230131",
     "xbrltype": "stringItemType"
    },
    "occ_statement-statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details-parentheticals": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 6 - Long-term Debt and Notes Payable - Long-term Debt (Details) (Parentheticals)"
       }
      }
     },
     "localname": "statement-statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details-parentheticals",
     "nsuri": "http://http/20230131",
     "xbrltype": "stringItemType"
    },
    "occ_statement-statement-note-6-longterm-debt-and-notes-payable-tables": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 6 - Long-term Debt and Notes Payable"
       }
      }
     },
     "localname": "statement-statement-note-6-longterm-debt-and-notes-payable-tables",
     "nsuri": "http://http/20230131",
     "xbrltype": "stringItemType"
    },
    "occ_statement-statement-note-7-leases-future-payments-due-details": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 7 - Leases - Future Payments Due (Details)"
       }
      }
     },
     "localname": "statement-statement-note-7-leases-future-payments-due-details",
     "nsuri": "http://http/20230131",
     "xbrltype": "stringItemType"
    },
    "occ_statement-statement-note-7-leases-tables": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 7 - Leases"
       }
      }
     },
     "localname": "statement-statement-note-7-leases-tables",
     "nsuri": "http://http/20230131",
     "xbrltype": "stringItemType"
    },
    "occ_statement-statement-note-9-net-income-loss-per-share-components-of-reconciliation-of-numerators-and-denominators-net-loss-per-share-details": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 9 - Net Income (Loss) Per Share - Components of Reconciliation of Numerators and Denominators Net Loss Per Share (Details)"
       }
      }
     },
     "localname": "statement-statement-note-9-net-income-loss-per-share-components-of-reconciliation-of-numerators-and-denominators-net-loss-per-share-details",
     "nsuri": "http://http/20230131",
     "xbrltype": "stringItemType"
    },
    "occ_statement-statement-note-9-net-income-loss-per-share-tables": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Note 9 - Net Income (Loss) Per Share"
       }
      }
     },
     "localname": "statement-statement-note-9-net-income-loss-per-share-tables",
     "nsuri": "http://http/20230131",
     "xbrltype": "stringItemType"
    },
    "srt_MajorCustomersAxis": {
     "auth_ref": [
      "r178",
      "r363",
      "r391",
      "r436"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Customer [Axis]"
       }
      }
     },
     "localname": "MajorCustomersAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-10-segment-information-and-business-and-credit-concentrations",
      "http://http/20230131/role/statement-note-10-segment-information-and-business-and-credit-concentrations-details-textual"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_MaximumMember": {
     "auth_ref": [
      "r193",
      "r194",
      "r195",
      "r196",
      "r229",
      "r315",
      "r325",
      "r347",
      "r348",
      "r361",
      "r364",
      "r369",
      "r389",
      "r430",
      "r431",
      "r432",
      "r433",
      "r434",
      "r435"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Maximum [Member]"
       }
      }
     },
     "localname": "MaximumMember",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_NameOfMajorCustomerDomain": {
     "auth_ref": [
      "r178",
      "r363",
      "r391",
      "r436"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Customer [Domain]"
       }
      }
     },
     "localname": "NameOfMajorCustomerDomain",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-10-segment-information-and-business-and-credit-concentrations",
      "http://http/20230131/role/statement-note-10-segment-information-and-business-and-credit-concentrations-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_RangeAxis": {
     "auth_ref": [
      "r193",
      "r194",
      "r195",
      "r196",
      "r228",
      "r229",
      "r253",
      "r254",
      "r255",
      "r314",
      "r315",
      "r325",
      "r347",
      "r348",
      "r361",
      "r364",
      "r369",
      "r385",
      "r389",
      "r431",
      "r432",
      "r433",
      "r434",
      "r435"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statistical Measurement [Axis]"
       }
      }
     },
     "localname": "RangeAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-details-textual"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_RangeMember": {
     "auth_ref": [
      "r193",
      "r194",
      "r195",
      "r196",
      "r228",
      "r229",
      "r253",
      "r254",
      "r255",
      "r314",
      "r315",
      "r325",
      "r347",
      "r348",
      "r361",
      "r364",
      "r369",
      "r385",
      "r389",
      "r431",
      "r432",
      "r433",
      "r434",
      "r435"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statistical Measurement [Domain]"
       }
      }
     },
     "localname": "RangeMember",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_SegmentGeographicalDomain": {
     "auth_ref": [
      "r176",
      "r177",
      "r338",
      "r339",
      "r340",
      "r341",
      "r342",
      "r343",
      "r344",
      "r345",
      "r346",
      "r362",
      "r368",
      "r391"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Geographical [Domain]"
       }
      }
     },
     "localname": "SegmentGeographicalDomain",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-11-revenue-recognition",
      "http://http/20230131/role/statement-note-11-revenue-recognition-revenue-attributed-to-united-states-and-all-other-countries-details"
     ],
     "xbrltype": "domainItemType"
    },
    "srt_StatementGeographicalAxis": {
     "auth_ref": [
      "r176",
      "r177",
      "r335",
      "r338",
      "r339",
      "r340",
      "r341",
      "r342",
      "r343",
      "r344",
      "r345",
      "r346",
      "r362",
      "r368",
      "r391"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Geographical [Axis]"
       }
      }
     },
     "localname": "StatementGeographicalAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-11-revenue-recognition",
      "http://http/20230131/role/statement-note-11-revenue-recognition-revenue-attributed-to-united-states-and-all-other-countries-details"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_TitleOfIndividualAxis": {
     "auth_ref": [
      "r383",
      "r427"
     ],
     "lang": {
      "en-us": {
       "role": {
        "label": "Title of Individual [Axis]"
       }
      }
     },
     "localname": "TitleOfIndividualAxis",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-2-stock-incentive-plans-and-other-sharebased-compensation",
      "http://http/20230131/role/statement-note-2-stock-incentive-plans-and-other-sharebased-compensation-details-textual"
     ],
     "xbrltype": "stringItemType"
    },
    "srt_TitleOfIndividualWithRelationshipToEntityDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Title of Individual [Domain]"
       }
      }
     },
     "localname": "TitleOfIndividualWithRelationshipToEntityDomain",
     "nsuri": "http://fasb.org/srt/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-2-stock-incentive-plans-and-other-sharebased-compensation",
      "http://http/20230131/role/statement-note-2-stock-incentive-plans-and-other-sharebased-compensation-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AccountsPayableAndAccruedLiabilitiesCurrent": {
     "auth_ref": [
      "r13"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "order": 1.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Sum of the carrying values as of the balance sheet date of obligations incurred through that date and due within one year (or the operating cycle, if longer), including liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received, taxes, interest, rent and utilities, accrued salaries and bonuses, payroll taxes and fringe benefits.",
        "label": "Accounts payable and accrued expenses"
       }
      }
     },
     "localname": "AccountsPayableAndAccruedLiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AccountsPayableAndAccruedLiabilitiesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Primary financial statement caption encompassing accounts payable and accrued liabilities.",
        "label": "Accounts Payable and Accrued Liabilities [Member]"
       }
      }
     },
     "localname": "AccountsPayableAndAccruedLiabilitiesMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-5-product-warranties",
      "http://http/20230131/role/statement-note-5-product-warranties-details-textual",
      "http://http/20230131/role/statement-note-7-leases",
      "http://http/20230131/role/statement-note-7-leases-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_AccountsReceivableNetCurrent": {
     "auth_ref": [
      "r179",
      "r180"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "order": 1.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current.",
        "label": "Trade accounts receivable, net of allowance for doubtful accounts of $59,856 at January 31, 2023 and $69,643 at October 31, 2022"
       }
      }
     },
     "localname": "AccountsReceivableNetCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation": {
     "auth_ref": [],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of decrease to equity for grantee's tax withholding obligation for award under share-based payment arrangement.",
        "label": "us-gaap_AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation",
        "terseLabel": "Share-Based Payment Arrangement, Decrease for Tax Withholding Obligation"
       }
      }
     },
     "localname": "AdjustmentsRelatedToTaxWithholdingForShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-2-stock-incentive-plans-and-other-sharebased-compensation-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Adjustments to reconcile net income (loss) to net cash used in operating activities:"
       }
      }
     },
     "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AllocatedShareBasedCompensationExpense": {
     "auth_ref": [
      "r257"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of expense for award under share-based payment arrangement. Excludes amount capitalized.",
        "label": "us-gaap_AllocatedShareBasedCompensationExpense",
        "terseLabel": "Share-Based Payment Arrangement, Expense"
       }
      }
     },
     "localname": "AllocatedShareBasedCompensationExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-2-stock-incentive-plans-and-other-sharebased-compensation-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": {
     "auth_ref": [
      "r114",
      "r181",
      "r188"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of allowance for credit loss on accounts receivable, classified as current.",
        "label": "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent",
        "periodEndLabel": "Balance at end of period",
        "periodStartLabel": "Balance at beginning of period",
        "terseLabel": "Accounts Receivable, Allowance for Credit Loss, Current"
       }
      }
     },
     "localname": "AllowanceForDoubtfulAccountsReceivableCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals",
      "http://http/20230131/role/statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-summary-of-changes-in-the-allowance-for-doubtful-accounts-for-trade-accounts-receivable-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AmortizationOfIntangibleAssets": {
     "auth_ref": [
      "r36",
      "r50",
      "r52"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-operations-unaudited-": {
       "order": 2.0,
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate expense charged against earnings to allocate the cost of intangible assets (nonphysical assets not used in production) in a systematic and rational manner to the periods expected to benefit from such assets. As a noncash expense, this element is added back to net income when calculating cash provided by or used in operations using the indirect method.",
        "label": "Amortization of intangible assets"
       }
      }
     },
     "localname": "AmortizationOfIntangibleAssets",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-operations-unaudited-"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": {
     "auth_ref": [
      "r155"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented.",
        "label": "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
        "terseLabel": "Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount"
       }
      }
     },
     "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-9-net-income-loss-per-share-details-textual"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_AreaOfRealEstateProperty": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Area of a real estate property.",
        "label": "us-gaap_AreaOfRealEstateProperty",
        "terseLabel": "Area of Real Estate Property (Square Foot)"
       }
      }
     },
     "localname": "AreaOfRealEstateProperty",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-7-leases-details-textual"
     ],
     "xbrltype": "areaItemType"
    },
    "us-gaap_Assets": {
     "auth_ref": [
      "r85",
      "r95",
      "r111",
      "r127",
      "r166",
      "r169",
      "r173",
      "r184",
      "r197",
      "r198",
      "r199",
      "r200",
      "r201",
      "r202",
      "r203",
      "r204",
      "r205",
      "r274",
      "r276",
      "r286",
      "r367",
      "r387",
      "r388",
      "r428"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.",
        "label": "us-gaap_Assets",
        "totalLabel": "Total assets"
       }
      }
     },
     "localname": "Assets",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetsCurrent": {
     "auth_ref": [
      "r107",
      "r116",
      "r127",
      "r184",
      "r197",
      "r198",
      "r199",
      "r200",
      "r201",
      "r202",
      "r203",
      "r204",
      "r205",
      "r274",
      "r276",
      "r286",
      "r367",
      "r387",
      "r388",
      "r428"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "order": 2.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.",
        "label": "us-gaap_AssetsCurrent",
        "totalLabel": "Total current assets"
       }
      }
     },
     "localname": "AssetsCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_AssetsCurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Current assets:"
       }
      }
     },
     "localname": "AssetsCurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_AwardTypeAxis": {
     "auth_ref": [
      "r231",
      "r232",
      "r233",
      "r234",
      "r235",
      "r236",
      "r237",
      "r238",
      "r239",
      "r240",
      "r241",
      "r242",
      "r243",
      "r244",
      "r245",
      "r246",
      "r247",
      "r248",
      "r249",
      "r250",
      "r251",
      "r252",
      "r253",
      "r254",
      "r255",
      "r256"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of award under share-based payment arrangement.",
        "label": "Award Type [Axis]"
       }
      }
     },
     "localname": "AwardTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-2-stock-incentive-plans-and-other-sharebased-compensation",
      "http://http/20230131/role/statement-note-2-stock-incentive-plans-and-other-sharebased-compensation-details-textual"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_BalanceSheetLocationAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by location on balance sheet (statement of financial position).",
        "label": "Balance Sheet Location [Axis]"
       }
      }
     },
     "localname": "BalanceSheetLocationAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-5-product-warranties",
      "http://http/20230131/role/statement-note-5-product-warranties-details-textual",
      "http://http/20230131/role/statement-note-7-leases",
      "http://http/20230131/role/statement-note-7-leases-details-textual"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_BalanceSheetLocationDomain": {
     "auth_ref": [
      "r75",
      "r76"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Location in the balance sheet (statement of financial position).",
        "label": "Balance Sheet Location [Domain]"
       }
      }
     },
     "localname": "BalanceSheetLocationDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-5-product-warranties",
      "http://http/20230131/role/statement-note-5-product-warranties-details-textual",
      "http://http/20230131/role/statement-note-7-leases",
      "http://http/20230131/role/statement-note-7-leases-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CashAndCashEquivalentsAtCarryingValue": {
     "auth_ref": [
      "r38",
      "r109",
      "r349"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "order": 0.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates. Excludes cash and cash equivalents within disposal group and discontinued operation.",
        "label": "Cash"
       }
      }
     },
     "localname": "CashAndCashEquivalentsAtCarryingValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations": {
     "auth_ref": [
      "r33",
      "r38",
      "r39"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including, but not limited to, disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.",
        "label": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations",
        "periodEndLabel": "Cash at end of period",
        "periodStartLabel": "Cash at beginning of period"
       }
      }
     },
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": {
     "auth_ref": [
      "r33",
      "r80"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in cash, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.",
        "label": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
        "totalLabel": "Net increase (decrease) in cash"
       }
      }
     },
     "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CommitmentsAndContingencies": {
     "auth_ref": [
      "r20",
      "r89",
      "r100"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Represents the caption on the face of the balance sheet to indicate that the entity has entered into (1) purchase or supply arrangements that will require expending a portion of its resources to meet the terms thereof, and (2) is exposed to potential losses or, less frequently, gains, arising from (a) possible claims against a company's resources due to future performance under contract terms, and (b) possible losses or likely gains from uncertainties that will ultimately be resolved when one or more future events that are deemed likely to occur do occur or fail to occur.",
        "label": "Commitments and Contingencies"
       }
      }
     },
     "localname": "CommitmentsAndContingencies",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": {
     "auth_ref": [
      "r54",
      "r191",
      "r192",
      "r337",
      "r386"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for commitments and contingencies.",
        "label": "Commitments and Contingencies Disclosure [Text Block]"
       }
      }
     },
     "localname": "CommitmentsAndContingenciesDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-12-contingencies"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_CommonStockMember": {
     "auth_ref": [
      "r379",
      "r380",
      "r419"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Stock that is subordinate to all other stock of the issuer.",
        "label": "Common Stock [Member]"
       }
      }
     },
     "localname": "CommonStockMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CommonStockNoParValue": {
     "auth_ref": [
      "r4"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Face amount per share of no-par value common stock.",
        "label": "us-gaap_CommonStockNoParValue",
        "terseLabel": "Common Stock, No Par Value (in dollars per share)"
       }
      }
     },
     "localname": "CommonStockNoParValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_CommonStockSharesAuthorized": {
     "auth_ref": [
      "r4"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws.",
        "label": "us-gaap_CommonStockSharesAuthorized",
        "terseLabel": "Common Stock, Shares Authorized (in shares)"
       }
      }
     },
     "localname": "CommonStockSharesAuthorized",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockSharesIssued": {
     "auth_ref": [
      "r4"
     ],
     "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": "us-gaap_CommonStockSharesIssued",
        "terseLabel": "Common Stock, Shares, Issued (in shares)"
       }
      }
     },
     "localname": "CommonStockSharesIssued",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockSharesOutstanding": {
     "auth_ref": [
      "r4",
      "r67"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation.",
        "label": "us-gaap_CommonStockSharesOutstanding",
        "terseLabel": "Common Stock, Shares, Outstanding, Ending Balance (in shares)"
       }
      }
     },
     "localname": "CommonStockSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_CommonStockValue": {
     "auth_ref": [
      "r4",
      "r367"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "order": 1.0,
       "parentTag": "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest",
       "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, no par value, authorized 50,000,000 shares; issued and outstanding 7,868,568 shares at January 31, 2023 and 7,893,194 shares at October 31, 2022"
       }
      }
     },
     "localname": "CommonStockValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ConcentrationRiskBenchmarkDomain": {
     "auth_ref": [
      "r42",
      "r43",
      "r78",
      "r79",
      "r178",
      "r336"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The denominator in a calculation of a disclosed concentration risk percentage.",
        "label": "Concentration Risk Benchmark [Domain]"
       }
      }
     },
     "localname": "ConcentrationRiskBenchmarkDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-10-segment-information-and-business-and-credit-concentrations",
      "http://http/20230131/role/statement-note-10-segment-information-and-business-and-credit-concentrations-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ConcentrationRiskByBenchmarkAxis": {
     "auth_ref": [
      "r42",
      "r43",
      "r78",
      "r79",
      "r178",
      "r334",
      "r336"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by benchmark of concentration risk.",
        "label": "Concentration Risk Benchmark [Axis]"
       }
      }
     },
     "localname": "ConcentrationRiskByBenchmarkAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-10-segment-information-and-business-and-credit-concentrations",
      "http://http/20230131/role/statement-note-10-segment-information-and-business-and-credit-concentrations-details-textual"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConcentrationRiskByTypeAxis": {
     "auth_ref": [
      "r42",
      "r43",
      "r78",
      "r79",
      "r178",
      "r336",
      "r437"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of concentration risk, for example, but not limited to, asset, liability, net assets, geographic, customer, employees, supplier, lender.",
        "label": "Concentration Risk Type [Axis]"
       }
      }
     },
     "localname": "ConcentrationRiskByTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-10-segment-information-and-business-and-credit-concentrations",
      "http://http/20230131/role/statement-note-10-segment-information-and-business-and-credit-concentrations-details-textual"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_ConcentrationRiskDisclosureTextBlock": {
     "auth_ref": [
      "r44"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for any concentrations existing at the date of the financial statements that make an entity vulnerable to a reasonably possible, near-term, severe impact. This disclosure informs financial statement users about the general nature of the risk associated with the concentration, and may indicate the percentage of concentration risk as of the balance sheet date.",
        "label": "Concentration Risk Disclosure [Text Block]"
       }
      }
     },
     "localname": "ConcentrationRiskDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-10-segment-information-and-business-and-credit-concentrations"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ConcentrationRiskPercentage1": {
     "auth_ref": [
      "r42",
      "r43",
      "r78",
      "r79",
      "r178"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "For an entity that discloses a concentration risk in relation to quantitative amount, which serves as the \"benchmark\" (or denominator) in the equation, this concept represents the concentration percentage derived from the division.",
        "label": "us-gaap_ConcentrationRiskPercentage1",
        "terseLabel": "Concentration Risk, Percentage"
       }
      }
     },
     "localname": "ConcentrationRiskPercentage1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-10-segment-information-and-business-and-credit-concentrations-details-textual"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_ConcentrationRiskTypeDomain": {
     "auth_ref": [
      "r42",
      "r43",
      "r78",
      "r79",
      "r178",
      "r336"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "For an entity that discloses a concentration risk as a percentage of some financial balance or benchmark, identifies the type (for example, asset, liability, net assets, geographic, customer, employees, supplier, lender) of the concentration.",
        "label": "Concentration Risk Type [Domain]"
       }
      }
     },
     "localname": "ConcentrationRiskTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-10-segment-information-and-business-and-credit-concentrations",
      "http://http/20230131/role/statement-note-10-segment-information-and-business-and-credit-concentrations-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ContractWithCustomerLiability": {
     "auth_ref": [
      "r213",
      "r214",
      "r225"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable.",
        "label": "us-gaap_ContractWithCustomerLiability",
        "terseLabel": "Contract with Customer, Liability, Total"
       }
      }
     },
     "localname": "ContractWithCustomerLiability",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-11-revenue-recognition-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ContractWithCustomerRefundLiability": {
     "auth_ref": [
      "r392"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of liability for consideration received or receivable from customer which is not included in transaction price, when consideration is expected to be refunded to customer.",
        "label": "us-gaap_ContractWithCustomerRefundLiability",
        "terseLabel": "Contract with Customer, Refund Liability, Total"
       }
      }
     },
     "localname": "ContractWithCustomerRefundLiability",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-11-revenue-recognition-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_CostOfGoodsAndServicesSold": {
     "auth_ref": [
      "r25",
      "r316"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-operations-unaudited-": {
       "order": 1.0,
       "parentTag": "us-gaap_GrossProfit",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate costs related to goods produced and sold and services rendered by an entity during the reporting period. This excludes costs incurred during the reporting period related to financial services rendered and other revenue generating activities.",
        "label": "Cost of goods sold"
       }
      }
     },
     "localname": "CostOfGoodsAndServicesSold",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-operations-unaudited-"
     ],
     "xbrltype": "monetaryItemType"
    },
    "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]"
       }
      }
     },
     "localname": "CreditFacilityAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-details-textual"
     ],
     "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]"
       }
      }
     },
     "localname": "CreditFacilityDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_CustomerConcentrationRiskMember": {
     "auth_ref": [
      "r41",
      "r178"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Reflects the percentage that revenues in the period from one or more significant customers is to net revenues, as defined by the entity, such as total net revenues, product line revenues, segment revenues. The risk is the materially adverse effects of loss of a significant customer.",
        "label": "Customer Concentration Risk [Member]"
       }
      }
     },
     "localname": "CustomerConcentrationRiskMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-10-segment-information-and-business-and-credit-concentrations",
      "http://http/20230131/role/statement-note-10-segment-information-and-business-and-credit-concentrations-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_DebtInstrumentBasisSpreadOnVariableRate1": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Percentage points added to the reference rate to compute the variable rate on the debt instrument.",
        "label": "us-gaap_DebtInstrumentBasisSpreadOnVariableRate1",
        "terseLabel": "Debt Instrument, Basis Spread on Variable Rate"
       }
      }
     },
     "localname": "DebtInstrumentBasisSpreadOnVariableRate1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-details-textual"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DebtInstrumentFaceAmount": {
     "auth_ref": [
      "r81",
      "r83",
      "r206",
      "r297",
      "r359",
      "r360"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Face (par) amount of debt instrument at time of issuance.",
        "label": "us-gaap_DebtInstrumentFaceAmount",
        "terseLabel": "Debt Instrument, Face Amount"
       }
      }
     },
     "localname": "DebtInstrumentFaceAmount",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details-parentheticals"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DebtInstrumentInterestRateEffectivePercentage": {
     "auth_ref": [
      "r17",
      "r81",
      "r210",
      "r297"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Effective interest rate for the funds borrowed under the debt agreement considering interest compounding and original issue discount or premium.",
        "label": "us-gaap_DebtInstrumentInterestRateEffectivePercentage",
        "terseLabel": "Debt Instrument, Interest Rate, Effective Percentage"
       }
      }
     },
     "localname": "DebtInstrumentInterestRateEffectivePercentage",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-details-textual"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DebtInstrumentInterestRateStatedPercentage": {
     "auth_ref": [
      "r17",
      "r207"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Contractual interest rate for funds borrowed, under the debt agreement.",
        "label": "us-gaap_DebtInstrumentInterestRateStatedPercentage",
        "terseLabel": "Debt Instrument, Interest Rate, Stated Percentage"
       }
      }
     },
     "localname": "DebtInstrumentInterestRateStatedPercentage",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-details-textual",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details-parentheticals"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_DebtInstrumentMaturityDate": {
     "auth_ref": [
      "r117",
      "r358",
      "r420"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Date when the debt instrument is scheduled to be fully repaid, in YYYY-MM-DD format.",
        "label": "us-gaap_DebtInstrumentMaturityDate",
        "terseLabel": "Debt Instrument, Maturity Date"
       }
      }
     },
     "localname": "DebtInstrumentMaturityDate",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details-parentheticals"
     ],
     "xbrltype": "dateItemType"
    },
    "us-gaap_DebtInstrumentPeriodicPayment": {
     "auth_ref": [
      "r18",
      "r93"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of the required periodic payments including both interest and principal payments.",
        "label": "us-gaap_DebtInstrumentPeriodicPayment",
        "terseLabel": "Debt Instrument, Periodic Payment, Total"
       }
      }
     },
     "localname": "DebtInstrumentPeriodicPayment",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details-parentheticals"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid": {
     "auth_ref": [],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of payment greater than the preceding installment payments to be paid at final maturity date of debt.",
        "label": "us-gaap_DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid",
        "terseLabel": "Debt Instrument, Periodic Payment Terms, Balloon Payment to be Paid"
       }
      }
     },
     "localname": "DebtInstrumentPeriodicPaymentTermsBalloonPaymentToBePaid",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details-parentheticals"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DepreciationDepletionAndAmortization": {
     "auth_ref": [
      "r36",
      "r164"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "order": 7.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the assets.",
        "label": "Depreciation and amortization"
       }
      }
     },
     "localname": "DepreciationDepletionAndAmortization",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": {
     "auth_ref": [
      "r230",
      "r258",
      "r259",
      "r261",
      "r265",
      "r365"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for share-based payment arrangement.",
        "label": "Share-Based Payment Arrangement [Text Block]"
       }
      }
     },
     "localname": "DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-2-stock-incentive-plans-and-other-sharebased-compensation"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_DisclosureTextBlockAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_DisclosureTextBlockAbstract",
        "terseLabel": "Notes to Financial Statements"
       }
      }
     },
     "localname": "DisclosureTextBlockAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-1-general",
      "http://http/20230131/role/statement-note-10-segment-information-and-business-and-credit-concentrations",
      "http://http/20230131/role/statement-note-11-revenue-recognition",
      "http://http/20230131/role/statement-note-12-contingencies",
      "http://http/20230131/role/statement-note-13-new-accounting-standards-not-yet-adopted",
      "http://http/20230131/role/statement-note-2-stock-incentive-plans-and-other-sharebased-compensation",
      "http://http/20230131/role/statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable",
      "http://http/20230131/role/statement-note-4-inventories",
      "http://http/20230131/role/statement-note-5-product-warranties",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-",
      "http://http/20230131/role/statement-note-7-leases",
      "http://http/20230131/role/statement-note-8-fair-value-measurements",
      "http://http/20230131/role/statement-note-9-net-income-loss-per-share"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_EarningsPerShareBasic": {
     "auth_ref": [
      "r124",
      "r138",
      "r139",
      "r140",
      "r141",
      "r142",
      "r149",
      "r150",
      "r152",
      "r153",
      "r154",
      "r158",
      "r280",
      "r281",
      "r320",
      "r323",
      "r355"
     ],
     "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": "Net income (loss) per share: Basic and diluted (in dollars per share)"
       }
      }
     },
     "localname": "EarningsPerShareBasic",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-operations-unaudited-",
      "http://http/20230131/role/statement-note-9-net-income-loss-per-share-components-of-reconciliation-of-numerators-and-denominators-net-loss-per-share-details"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_EarningsPerShareTextBlock": {
     "auth_ref": [
      "r155",
      "r156",
      "r157",
      "r159"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for earnings per share.",
        "label": "Earnings Per Share [Text Block]"
       }
      }
     },
     "localname": "EarningsPerShareTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-9-net-income-loss-per-share"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_EmployeeRelatedLiabilitiesCurrent": {
     "auth_ref": [
      "r15"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "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": "Accrued compensation and payroll taxes"
       }
      }
     },
     "localname": "EmployeeRelatedLiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized": {
     "auth_ref": [
      "r260"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cost not yet recognized for nonvested award under share-based payment arrangement.",
        "label": "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized",
        "terseLabel": "Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount, Total"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-2-stock-incentive-plans-and-other-sharebased-compensation-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": {
     "auth_ref": [
      "r260"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted-average period over which cost not yet recognized is expected to be recognized for award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1",
        "terseLabel": "Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition (Year)"
       }
      }
     },
     "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-2-stock-incentive-plans-and-other-sharebased-compensation-details-textual"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_EquityComponentDomain": {
     "auth_ref": [
      "r67",
      "r103",
      "r120",
      "r121",
      "r122",
      "r129",
      "r130",
      "r131",
      "r135",
      "r143",
      "r145",
      "r160",
      "r185",
      "r212",
      "r262",
      "r263",
      "r264",
      "r267",
      "r268",
      "r279",
      "r290",
      "r291",
      "r292",
      "r293",
      "r294",
      "r295",
      "r312",
      "r326",
      "r327",
      "r328"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Components of equity are the parts of the total Equity balance including that which is allocated to common, preferred, treasury stock, retained earnings, etc.",
        "label": "Equity Component [Domain]"
       }
      }
     },
     "localname": "EquityComponentDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_FairValueDisclosuresTextBlock": {
     "auth_ref": [
      "r285"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for the fair value of financial instruments (as defined), including financial assets and financial liabilities (collectively, as defined), and the measurements of those instruments as well as disclosures related to the fair value of non-financial assets and liabilities. Such disclosures about the financial instruments, assets, and liabilities would include: (1) the fair value of the required items together with their carrying amounts (as appropriate); (2) for items for which it is not practicable to estimate fair value, disclosure would include: (a) information pertinent to estimating fair value (including, carrying amount, effective interest rate, and maturity, and (b) the reasons why it is not practicable to estimate fair value; (3) significant concentrations of credit risk including: (a) information about the activity, region, or economic characteristics identifying a concentration, (b) the maximum amount of loss the entity is exposed to based on the gross fair value of the related item, (c) policy for requiring collateral or other security and information as to accessing such collateral or security, and (d) the nature and brief description of such collateral or security; (4) quantitative information about market risks and how such risks are managed; (5) for items measured on both a recurring and nonrecurring basis information regarding the inputs used to develop the fair value measurement; and (6) for items presented in the financial statement for which fair value measurement is elected: (a) information necessary to understand the reasons for the election, (b) discussion of the effect of fair value changes on earnings, (c) a description of [similar groups] items for which the election is made and the relation thereof to the balance sheet, the aggregate carrying value of items included in the balance sheet that are not eligible for the election; (7) all other required (as defined) and desired information.",
        "label": "Fair Value Disclosures [Text Block]"
       }
      }
     },
     "localname": "FairValueDisclosuresTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-8-fair-value-measurements"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_FinanceLeaseInterestExpense": {
     "auth_ref": [
      "r302",
      "r305",
      "r366"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of interest expense on finance lease liability.",
        "label": "us-gaap_FinanceLeaseInterestExpense",
        "terseLabel": "Finance Lease, Interest Expense"
       }
      }
     },
     "localname": "FinanceLeaseInterestExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-7-leases-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseLiability": {
     "auth_ref": [
      "r301",
      "r310"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from finance lease.",
        "label": "Total lease liability, finance lease"
       }
      }
     },
     "localname": "FinanceLeaseLiability",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-7-leases-future-payments-due-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseLiabilityCurrent": {
     "auth_ref": [
      "r301"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from finance lease, classified as current.",
        "label": "us-gaap_FinanceLeaseLiabilityCurrent",
        "terseLabel": "Finance Lease, Liability, Current"
       }
      }
     },
     "localname": "FinanceLeaseLiabilityCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-7-leases-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseLiabilityNoncurrent": {
     "auth_ref": [
      "r301"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from finance lease, classified as noncurrent.",
        "label": "us-gaap_FinanceLeaseLiabilityNoncurrent",
        "terseLabel": "Finance Lease, Liability, Noncurrent"
       }
      }
     },
     "localname": "FinanceLeaseLiabilityNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-7-leases-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseLiabilityPaymentsDue": {
     "auth_ref": [
      "r310"
     ],
     "calculation": {
      "http://http/20230131/role/statement-note-7-leases-future-payments-due-details": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments for finance lease.",
        "label": "us-gaap_FinanceLeaseLiabilityPaymentsDue",
        "totalLabel": "Total undiscounted lease payments, finance lease"
       }
      }
     },
     "localname": "FinanceLeaseLiabilityPaymentsDue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-7-leases-future-payments-due-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths": {
     "auth_ref": [
      "r310"
     ],
     "calculation": {
      "http://http/20230131/role/statement-note-7-leases-future-payments-due-details": {
       "order": 1.0,
       "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for finance 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": "us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths",
        "terseLabel": "2023, finance lease"
       }
      }
     },
     "localname": "FinanceLeaseLiabilityPaymentsDueNextTwelveMonths",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-7-leases-future-payments-due-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour": {
     "auth_ref": [
      "r310"
     ],
     "calculation": {
      "http://http/20230131/role/statement-note-7-leases-future-payments-due-details": {
       "order": 0.0,
       "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for finance 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": "us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour",
        "terseLabel": "2026, finance lease"
       }
      }
     },
     "localname": "FinanceLeaseLiabilityPaymentsDueYearFour",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-7-leases-future-payments-due-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree": {
     "auth_ref": [
      "r310"
     ],
     "calculation": {
      "http://http/20230131/role/statement-note-7-leases-future-payments-due-details": {
       "order": 3.0,
       "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for finance 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": "us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree",
        "terseLabel": "2025, finance lease"
       }
      }
     },
     "localname": "FinanceLeaseLiabilityPaymentsDueYearThree",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-7-leases-future-payments-due-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo": {
     "auth_ref": [
      "r310"
     ],
     "calculation": {
      "http://http/20230131/role/statement-note-7-leases-future-payments-due-details": {
       "order": 2.0,
       "parentTag": "us-gaap_FinanceLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for finance 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": "us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo",
        "terseLabel": "2024, finance lease"
       }
      }
     },
     "localname": "FinanceLeaseLiabilityPaymentsDueYearTwo",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-7-leases-future-payments-due-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount": {
     "auth_ref": [
      "r310"
     ],
     "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 finance lease.",
        "label": "us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount",
        "negatedLabel": "Present value discount, finance lease"
       }
      }
     },
     "localname": "FinanceLeaseLiabilityUndiscountedExcessAmount",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-7-leases-future-payments-due-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeasePrincipalPayments": {
     "auth_ref": [
      "r303",
      "r306"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "order": 4.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash outflow for principal payment on finance lease.",
        "label": "us-gaap_FinanceLeasePrincipalPayments",
        "negatedLabel": "Principal payments on financing lease",
        "terseLabel": "Finance Lease, Principal Payments"
       }
      }
     },
     "localname": "FinanceLeasePrincipalPayments",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited",
      "http://http/20230131/role/statement-note-7-leases-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseRightOfUseAsset": {
     "auth_ref": [
      "r300"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, after accumulated amortization, of right-of-use asset from finance lease.",
        "label": "us-gaap_FinanceLeaseRightOfUseAsset",
        "terseLabel": "Finance Lease, Right-of-Use Asset, after Accumulated Amortization, Total"
       }
      }
     },
     "localname": "FinanceLeaseRightOfUseAsset",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-7-leases-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_FinanceLeaseRightOfUseAssetAmortization": {
     "auth_ref": [
      "r302",
      "r305",
      "r366"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of amortization expense attributable to right-of-use asset from finance lease.",
        "label": "us-gaap_FinanceLeaseRightOfUseAssetAmortization",
        "terseLabel": "Finance Lease, Right-of-Use Asset, Amortization"
       }
      }
     },
     "localname": "FinanceLeaseRightOfUseAssetAmortization",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-7-leases-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GainLossOnSaleOfPropertyPlantEquipment": {
     "auth_ref": [
      "r36"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "order": 10.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of gain (loss) on sale or disposal of property, plant and equipment assets, including oil and gas property and timber property.",
        "label": "us-gaap_GainLossOnSaleOfPropertyPlantEquipment",
        "negatedLabel": "Loss on sale of property and equipment"
       }
      }
     },
     "localname": "GainLossOnSaleOfPropertyPlantEquipment",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_GrossProfit": {
     "auth_ref": [
      "r24",
      "r127",
      "r166",
      "r168",
      "r172",
      "r174",
      "r184",
      "r197",
      "r198",
      "r199",
      "r200",
      "r201",
      "r202",
      "r203",
      "r204",
      "r205",
      "r286",
      "r357",
      "r387"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-operations-unaudited-": {
       "order": 3.0,
       "parentTag": "us-gaap_OperatingIncomeLoss",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity.",
        "label": "us-gaap_GrossProfit",
        "totalLabel": "Gross profit"
       }
      }
     },
     "localname": "GrossProfit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-operations-unaudited-"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": {
     "auth_ref": [
      "r22",
      "r84",
      "r90",
      "r102",
      "r166",
      "r168",
      "r172",
      "r174",
      "r321",
      "r357"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-operations-unaudited-": {
       "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": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
        "totalLabel": "Income (loss) before income taxes"
       }
      }
     },
     "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-operations-unaudited-"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncomeStatementAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Income Statement [Abstract]"
       }
      }
     },
     "localname": "IncomeStatementAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncomeTaxExpenseBenefit": {
     "auth_ref": [
      "r128",
      "r144",
      "r145",
      "r165",
      "r266",
      "r272",
      "r273",
      "r324"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-operations-unaudited-": {
       "order": 0.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": "us-gaap_IncomeTaxExpenseBenefit",
        "terseLabel": "Income tax expense"
       }
      }
     },
     "localname": "IncomeTaxExpenseBenefit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-operations-unaudited-"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities": {
     "auth_ref": [
      "r35"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "order": 2.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in the amounts payable to vendors for goods and services received and the amount of obligations and expenses incurred but not paid.",
        "label": "us-gaap_IncreaseDecreaseInAccountsPayableAndAccruedLiabilities",
        "terseLabel": "Accounts payable and accrued expenses"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccountsPayableAndAccruedLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccountsReceivable": {
     "auth_ref": [
      "r35"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "order": 11.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services.",
        "label": "us-gaap_IncreaseDecreaseInAccountsReceivable",
        "negatedTerseLabel": "Trade accounts receivable"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccountsReceivable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable": {
     "auth_ref": [
      "r35"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "order": 4.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the period in the amount due for taxes based on the reporting entity's earnings or attributable to the entity's income earning process (business presence) within a given jurisdiction.",
        "label": "us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable",
        "terseLabel": "Income taxes payable"
       }
      }
     },
     "localname": "IncreaseDecreaseInAccruedIncomeTaxesPayable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities": {
     "auth_ref": [
      "r35"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "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 aggregate amount of obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits.",
        "label": "us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities",
        "terseLabel": "Accrued compensation and payroll taxes"
       }
      }
     },
     "localname": "IncreaseDecreaseInEmployeeRelatedLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInInventories": {
     "auth_ref": [
      "r35"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "order": 13.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities.",
        "label": "us-gaap_IncreaseDecreaseInInventories",
        "negatedTerseLabel": "Inventories"
       }
      }
     },
     "localname": "IncreaseDecreaseInInventories",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInOperatingAssetsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "(Increase) decrease in:"
       }
      }
     },
     "localname": "IncreaseDecreaseInOperatingAssetsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncreaseDecreaseInOperatingLiabilitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Increase (decrease) in:"
       }
      }
     },
     "localname": "IncreaseDecreaseInOperatingLiabilitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities": {
     "auth_ref": [],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "order": 5.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in noncurrent operating liabilities classified as other.",
        "label": "us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities",
        "terseLabel": "Other noncurrent liabilities"
       }
      }
     },
     "localname": "IncreaseDecreaseInOtherNoncurrentLiabilities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInOtherOperatingAssets": {
     "auth_ref": [
      "r35"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in operating assets classified as other.",
        "label": "us-gaap_IncreaseDecreaseInOtherOperatingAssets",
        "negatedLabel": "Other assets"
       }
      }
     },
     "localname": "IncreaseDecreaseInOtherOperatingAssets",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInOtherReceivables": {
     "auth_ref": [
      "r35"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "order": 12.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": "us-gaap_IncreaseDecreaseInOtherReceivables",
        "negatedTerseLabel": "Other receivables"
       }
      }
     },
     "localname": "IncreaseDecreaseInOtherReceivables",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets": {
     "auth_ref": [
      "r35"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "order": 0.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in prepaid expenses, and assets classified as other.",
        "label": "us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets",
        "negatedLabel": "Prepaid expenses and other assets"
       }
      }
     },
     "localname": "IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_IntangibleAssetsNetExcludingGoodwill": {
     "auth_ref": [
      "r49",
      "r51"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "order": 0.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Sum of the carrying amounts of all intangible assets, excluding goodwill, as of the balance sheet date, net of accumulated amortization and impairment charges.",
        "label": "Intangible assets, net"
       }
      }
     },
     "localname": "IntangibleAssetsNetExcludingGoodwill",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InterestExpense": {
     "auth_ref": [
      "r82",
      "r92",
      "r123",
      "r163",
      "r296"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-operations-unaudited-": {
       "order": 0.0,
       "parentTag": "us-gaap_NonoperatingIncomeExpense",
       "weight": -1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of the cost of borrowed funds accounted for as interest expense.",
        "label": "us-gaap_InterestExpense",
        "negatedLabel": "Interest expense, net"
       }
      }
     },
     "localname": "InterestExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-operations-unaudited-"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryDisclosureTextBlock": {
     "auth_ref": [
      "r190"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for inventory. Includes, but is not limited to, the basis of stating inventory, the method of determining inventory cost, the classes of inventory, and the nature of the cost elements included in inventory.",
        "label": "Inventory Disclosure [Text Block]"
       }
      }
     },
     "localname": "InventoryDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-4-inventories"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_InventoryFinishedGoodsNetOfReserves": {
     "auth_ref": [
      "r48",
      "r351"
     ],
     "calculation": {
      "http://http/20230131/role/statement-note-4-inventories-components-of-inventories-details": {
       "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 merchandise or goods held by the company that are readily available for sale.",
        "label": "Finished goods"
       }
      }
     },
     "localname": "InventoryFinishedGoodsNetOfReserves",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-4-inventories-components-of-inventories-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryNet": {
     "auth_ref": [
      "r115",
      "r350",
      "r367"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "order": 3.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      },
      "http://http/20230131/role/statement-note-4-inventories-components-of-inventories-details": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.",
        "label": "Inventories",
        "totalLabel": "Total"
       }
      }
     },
     "localname": "InventoryNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited",
      "http://http/20230131/role/statement-note-4-inventories-components-of-inventories-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryRawMaterialsNetOfReserves": {
     "auth_ref": [
      "r48",
      "r353"
     ],
     "calculation": {
      "http://http/20230131/role/statement-note-4-inventories-components-of-inventories-details": {
       "order": 1.0,
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying amount, net of valuation reserves and adjustments, as of the balance sheet date of unprocessed items to be consumed in the manufacturing or production process.",
        "label": "Raw materials"
       }
      }
     },
     "localname": "InventoryRawMaterialsNetOfReserves",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-4-inventories-components-of-inventories-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventorySuppliesNetOfReserves": {
     "auth_ref": [
      "r47",
      "r354"
     ],
     "calculation": {
      "http://http/20230131/role/statement-note-4-inventories-components-of-inventories-details": {
       "order": 2.0,
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying amount, net of valuation reserves and adjustments, as of the balance sheet date of products used directly or indirectly in the manufacturing or production process, which may or may not become part of the final product. May also include items used in the storage, presentation or transportation of physical goods.",
        "label": "Production supplies"
       }
      }
     },
     "localname": "InventorySuppliesNetOfReserves",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-4-inventories-components-of-inventories-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_InventoryWorkInProcessNetOfReserves": {
     "auth_ref": [
      "r48",
      "r352"
     ],
     "calculation": {
      "http://http/20230131/role/statement-note-4-inventories-components-of-inventories-details": {
       "order": 0.0,
       "parentTag": "us-gaap_InventoryNet",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying amount, net of reserves and adjustments, as of the balance sheet date of merchandise or goods which are partially completed. This inventory is generally comprised of raw materials, labor and factory overhead costs, which require further materials, labor and overhead to be converted into finished goods, and which generally require the use of estimates to determine percentage complete and pricing.",
        "label": "Work in process"
       }
      }
     },
     "localname": "InventoryWorkInProcessNetOfReserves",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-4-inventories-components-of-inventories-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LeaseContractualTermAxis": {
     "auth_ref": [
      "r426"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by contractual term of lease arrangement.",
        "label": "Lease Contractual Term [Axis]"
       }
      }
     },
     "localname": "LeaseContractualTermAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-7-leases",
      "http://http/20230131/role/statement-note-7-leases-details-textual"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LeaseContractualTermDomain": {
     "auth_ref": [
      "r426"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Contractual term of lease arrangement.",
        "label": "Lease Contractual Term [Domain]"
       }
      }
     },
     "localname": "LeaseContractualTermDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-7-leases",
      "http://http/20230131/role/statement-note-7-leases-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LesseeFinanceLeaseDiscountRate": {
     "auth_ref": [
      "r425"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Discount rate used by lessee to determine present value of finance lease payments.",
        "label": "us-gaap_LesseeFinanceLeaseDiscountRate",
        "terseLabel": "Lessee, Finance Lease, Discount Rate"
       }
      }
     },
     "localname": "LesseeFinanceLeaseDiscountRate",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-7-leases-details-textual"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_LesseeFinanceLeaseRemainingLeaseTerm": {
     "auth_ref": [
      "r423"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Remaining lease term of finance lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "us-gaap_LesseeFinanceLeaseRemainingLeaseTerm",
        "terseLabel": "Lessee, Finance Lease, Remaining Lease Term (Month)"
       }
      }
     },
     "localname": "LesseeFinanceLeaseRemainingLeaseTerm",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-7-leases-details-textual"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": {
     "auth_ref": [
      "r310"
     ],
     "calculation": {
      "http://http/20230131/role/statement-note-7-leases-future-payments-due-details": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease.",
        "label": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
        "totalLabel": "Total undiscounted lease payments, operating lease"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-7-leases-future-payments-due-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths": {
     "auth_ref": [
      "r310"
     ],
     "calculation": {
      "http://http/20230131/role/statement-note-7-leases-future-payments-due-details": {
       "order": 0.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
        "terseLabel": "2023, operating lease"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-7-leases-future-payments-due-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour": {
     "auth_ref": [
      "r310"
     ],
     "calculation": {
      "http://http/20230131/role/statement-note-7-leases-future-payments-due-details": {
       "order": 3.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in 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": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour",
        "terseLabel": "2026, operating lease"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFour",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-7-leases-future-payments-due-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": {
     "auth_ref": [
      "r310"
     ],
     "calculation": {
      "http://http/20230131/role/statement-note-7-leases-future-payments-due-details": {
       "order": 2.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in 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": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree",
        "terseLabel": "2025, operating lease"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-7-leases-future-payments-due-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": {
     "auth_ref": [
      "r310"
     ],
     "calculation": {
      "http://http/20230131/role/statement-note-7-leases-future-payments-due-details": {
       "order": 1.0,
       "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach).",
        "label": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo",
        "terseLabel": "2024, operating lease"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-7-leases-future-payments-due-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": {
     "auth_ref": [
      "r310"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease.",
        "label": "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount",
        "negatedLabel": "Present value discount, operating lease"
       }
      }
     },
     "localname": "LesseeOperatingLeaseLiabilityUndiscountedExcessAmount",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-7-leases-future-payments-due-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LesseeOperatingLeaseTermOfContract": {
     "auth_ref": [
      "r424"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Term of lessee's operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "us-gaap_LesseeOperatingLeaseTermOfContract",
        "terseLabel": "Lessee, Operating Lease, Term of Contract (Month)"
       }
      }
     },
     "localname": "LesseeOperatingLeaseTermOfContract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-7-leases-details-textual"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_Liabilities": {
     "auth_ref": [
      "r14",
      "r127",
      "r184",
      "r197",
      "r198",
      "r199",
      "r200",
      "r201",
      "r202",
      "r203",
      "r204",
      "r205",
      "r275",
      "r276",
      "r277",
      "r286",
      "r356",
      "r387",
      "r428",
      "r429"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "order": 1.0,
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Sum of the carrying amounts as of the balance sheet date of all liabilities that are recognized. Liabilities are probable future sacrifices of economic benefits arising from present obligations of an entity to transfer assets or provide services to other entities in the future.",
        "label": "us-gaap_Liabilities",
        "totalLabel": "Total liabilities"
       }
      }
     },
     "localname": "Liabilities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesAndStockholdersEquity": {
     "auth_ref": [
      "r8",
      "r87",
      "r98",
      "r367",
      "r378",
      "r384",
      "r421"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any.",
        "label": "us-gaap_LiabilitiesAndStockholdersEquity",
        "totalLabel": "Total liabilities and shareholders\u2019 equity"
       }
      }
     },
     "localname": "LiabilitiesAndStockholdersEquity",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesCurrent": {
     "auth_ref": [
      "r16",
      "r108",
      "r127",
      "r184",
      "r197",
      "r198",
      "r199",
      "r200",
      "r201",
      "r202",
      "r203",
      "r204",
      "r205",
      "r275",
      "r276",
      "r277",
      "r286",
      "r367",
      "r387",
      "r428",
      "r429"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "order": 0.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer.",
        "label": "us-gaap_LiabilitiesCurrent",
        "totalLabel": "Total current liabilities"
       }
      }
     },
     "localname": "LiabilitiesCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LiabilitiesCurrentAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Current liabilities:"
       }
      }
     },
     "localname": "LiabilitiesCurrentAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LineOfCredit": {
     "auth_ref": [
      "r2",
      "r86",
      "r94"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The carrying value as of the balance sheet date of the current and noncurrent portions of long-term obligations drawn from a line of credit, which is a bank's commitment to make loans up to a specific amount. Examples of items that might be included in the application of this element may consist of letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to a maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line. Includes short-term obligations that would normally be classified as current liabilities but for which (a) postbalance sheet date issuance of a long term obligation to refinance the short term obligation on a long term basis, or (b) the enterprise has entered into a financing agreement that clearly permits the enterprise to refinance the short-term obligation on a long term basis and the following conditions are met (1) the agreement does not expire within 1 year and is not cancelable by the lender except for violation of an objectively determinable provision, (2) no violation exists at the BS date, and (3) the lender has entered into the financing agreement is expected to be financially capable of honoring the agreement.",
        "label": "us-gaap_LineOfCredit",
        "terseLabel": "Long-Term Line of Credit, Total"
       }
      }
     },
     "localname": "LineOfCredit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LineOfCreditFacilityAxis": {
     "auth_ref": [
      "r12",
      "r377"
     ],
     "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]"
       }
      }
     },
     "localname": "LineOfCreditFacilityAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-details-textual"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LineOfCreditFacilityLenderDomain": {
     "auth_ref": [
      "r12",
      "r377"
     ],
     "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]"
       }
      }
     },
     "localname": "LineOfCreditFacilityLenderDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity": {
     "auth_ref": [
      "r12"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Maximum borrowing capacity under the credit facility without consideration of any current restrictions on the amount that could be borrowed or the amounts currently outstanding under the facility.",
        "label": "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity",
        "terseLabel": "Line of Credit Facility, Maximum Borrowing Capacity"
       }
      }
     },
     "localname": "LineOfCreditFacilityMaximumBorrowingCapacity",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity": {
     "auth_ref": [
      "r12"
     ],
     "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": "us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity",
        "terseLabel": "Line of Credit Facility, Remaining Borrowing Capacity"
       }
      }
     },
     "localname": "LineOfCreditFacilityRemainingBorrowingCapacity",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LoansPayableCurrent": {
     "auth_ref": [
      "r15"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "order": 0.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of portion of long-term loans payable due within one year or the operating cycle if longer.",
        "label": "Current installments of long-term debt"
       }
      }
     },
     "localname": "LoansPayableCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebt": {
     "auth_ref": [
      "r2",
      "r86",
      "r96",
      "r208",
      "r209",
      "r359",
      "r360"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, excluding unamortized premium (discount) and debt issuance cost, of long-term debt. Excludes lease obligation.",
        "label": "us-gaap_LongTermDebt",
        "terseLabel": "Long-term debt"
       }
      }
     },
     "localname": "LongTermDebt",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtCurrent": {
     "auth_ref": [
      "r13"
     ],
     "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": "us-gaap_LongTermDebtCurrent",
        "terseLabel": "Less current installments"
       }
      }
     },
     "localname": "LongTermDebtCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtNoncurrent": {
     "auth_ref": [
      "r112"
     ],
     "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": "us-gaap_LongTermDebtNoncurrent",
        "terseLabel": "Long-term debt, excluding current installments"
       }
      }
     },
     "localname": "LongTermDebtNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermDebtTextBlock": {
     "auth_ref": [
      "r66"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for long-term debt.",
        "label": "Long-Term Debt [Text Block]"
       }
      }
     },
     "localname": "LongTermDebtTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_LongTermLineOfCredit": {
     "auth_ref": [
      "r18",
      "r63",
      "r64"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "order": 1.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The carrying value as of the balance sheet date of the noncurrent portion of long-term obligations drawn from a line of credit, which is a bank's commitment to make loans up to a specific amount. Examples of items that might be included in the application of this element may consist of letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to a maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line. Includes short-term obligations that would normally be classified as current liabilities but for which (a) postbalance sheet date issuance of a long term obligation to refinance the short term obligation on a long term basis, or (b) the enterprise has entered into a financing agreement that clearly permits the enterprise to refinance the short-term obligation on a long term basis and the following conditions are met (1) the agreement does not expire within 1 year and is not cancelable by the lender except for violation of an objectively determinable provision, (2) no violation exists at the BS date, and (3) the lender has entered into the financing agreement is expected to be financially capable of honoring the agreement.",
        "label": "Note payable, revolver - noncurrent"
       }
      }
     },
     "localname": "LongTermLineOfCredit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongTermLoansPayable": {
     "auth_ref": [
      "r18"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "order": 2.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of loans payable (with maturities initially due after one year or beyond the operating cycle if longer), excluding current portion.",
        "label": "Long-term debt, excluding current installments"
       }
      }
     },
     "localname": "LongTermLoansPayable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_LongtermDebtTypeAxis": {
     "auth_ref": [
      "r18"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of long-term debt.",
        "label": "Long-Term Debt, Type [Axis]"
       }
      }
     },
     "localname": "LongtermDebtTypeAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-details-textual",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details-parentheticals"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_LongtermDebtTypeDomain": {
     "auth_ref": [
      "r18",
      "r65"
     ],
     "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]"
       }
      }
     },
     "localname": "LongtermDebtTypeDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-details-textual",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details-parentheticals"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivities": {
     "auth_ref": [
      "r126"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "order": 0.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit.",
        "label": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
        "totalLabel": "Net cash provided by financing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInFinancingActivities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash flows from financing activities:"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivities": {
     "auth_ref": [
      "r126"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "order": 1.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets.",
        "label": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
        "totalLabel": "Net cash used in investing activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInInvestingActivities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash flows from investing activities:"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivities": {
     "auth_ref": [
      "r33",
      "r34",
      "r37"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "order": 2.0,
       "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect",
       "weight": 1.0
      }
     },
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities.",
        "label": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
        "totalLabel": "Net cash used in operating activities"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInOperatingActivities",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Cash flows from operating activities:"
       }
      }
     },
     "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_NetIncomeLoss": {
     "auth_ref": [
      "r23",
      "r37",
      "r91",
      "r101",
      "r106",
      "r118",
      "r119",
      "r122",
      "r127",
      "r134",
      "r138",
      "r139",
      "r140",
      "r141",
      "r144",
      "r145",
      "r151",
      "r166",
      "r168",
      "r172",
      "r174",
      "r184",
      "r197",
      "r198",
      "r199",
      "r200",
      "r201",
      "r202",
      "r203",
      "r204",
      "r205",
      "r281",
      "r286",
      "r357",
      "r387"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "order": 6.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities",
       "weight": 1.0
      },
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-operations-unaudited-": {
       "order": null,
       "parentTag": null,
       "root": true,
       "weight": null
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.",
        "label": "Net income (loss)",
        "terseLabel": "Net income",
        "totalLabel": "Net income (loss)"
       }
      }
     },
     "localname": "NetIncomeLoss",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited",
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-operations-unaudited-",
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited",
      "http://http/20230131/role/statement-note-9-net-income-loss-per-share-components-of-reconciliation-of-numerators-and-denominators-net-loss-per-share-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock": {
     "auth_ref": [
      "r105",
      "r132",
      "r133",
      "r136",
      "r137",
      "r146",
      "r147",
      "r148",
      "r182",
      "r183",
      "r186",
      "r187",
      "r269",
      "r270",
      "r271",
      "r278",
      "r282",
      "r283",
      "r284",
      "r287",
      "r288",
      "r289",
      "r298",
      "r299",
      "r311",
      "r313",
      "r317",
      "r318",
      "r319",
      "r329",
      "r330",
      "r331",
      "r332",
      "r333"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The entire disclosure for change in accounting principle. Includes, but is not limited to, nature, reason, and method of adopting amendment to accounting standards or other change in accounting principle.",
        "label": "Accounting Standards Update and Change in Accounting Principle [Text Block]"
       }
      }
     },
     "localname": "NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-13-new-accounting-standards-not-yet-adopted"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_NonUsMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Countries excluding the United States of America (US).",
        "label": "Non-US [Member]"
       }
      }
     },
     "localname": "NonUsMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-11-revenue-recognition",
      "http://http/20230131/role/statement-note-11-revenue-recognition-revenue-attributed-to-united-states-and-all-other-countries-details"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_NonoperatingIncomeExpense": {
     "auth_ref": [
      "r27"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-operations-unaudited-": {
       "order": 1.0,
       "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The aggregate amount of income or expense from ancillary business-related activities (that is to say, excluding major activities considered part of the normal operations of the business).",
        "label": "us-gaap_NonoperatingIncomeExpense",
        "totalLabel": "Other expense, net"
       }
      }
     },
     "localname": "NonoperatingIncomeExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-operations-unaudited-"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingIncomeLoss": {
     "auth_ref": [
      "r166",
      "r168",
      "r172",
      "r174",
      "r357"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-operations-unaudited-": {
       "order": 0.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": "us-gaap_OperatingIncomeLoss",
        "totalLabel": "Income (loss) from operations"
       }
      }
     },
     "localname": "OperatingIncomeLoss",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-operations-unaudited-"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseExpense": {
     "auth_ref": [
      "r422"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of operating lease expense. Excludes sublease income.",
        "label": "us-gaap_OperatingLeaseExpense",
        "terseLabel": "Operating Lease, Expense"
       }
      }
     },
     "localname": "OperatingLeaseExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-7-leases-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiability": {
     "auth_ref": [
      "r301"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease.",
        "label": "Total lease liability, operating lease"
       }
      }
     },
     "localname": "OperatingLeaseLiability",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-7-leases-future-payments-due-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilityCurrent": {
     "auth_ref": [
      "r301"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current.",
        "label": "us-gaap_OperatingLeaseLiabilityCurrent",
        "terseLabel": "Operating Lease, Liability, Current"
       }
      }
     },
     "localname": "OperatingLeaseLiabilityCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-7-leases-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseLiabilityNoncurrent": {
     "auth_ref": [
      "r301"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent.",
        "label": "us-gaap_OperatingLeaseLiabilityNoncurrent",
        "terseLabel": "Operating Lease, Liability, Noncurrent"
       }
      }
     },
     "localname": "OperatingLeaseLiabilityNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-7-leases-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeasePayments": {
     "auth_ref": [
      "r304",
      "r306"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of cash outflow from operating lease, excluding payments to bring another asset to condition and location necessary for its intended use.",
        "label": "us-gaap_OperatingLeasePayments",
        "terseLabel": "Operating Lease, Payments"
       }
      }
     },
     "localname": "OperatingLeasePayments",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-7-leases-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseRightOfUseAsset": {
     "auth_ref": [
      "r300"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of lessee's right to use underlying asset under operating lease.",
        "label": "us-gaap_OperatingLeaseRightOfUseAsset",
        "terseLabel": "Operating Lease, Right-of-Use Asset"
       }
      }
     },
     "localname": "OperatingLeaseRightOfUseAsset",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-7-leases-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent": {
     "auth_ref": [
      "r309",
      "r366"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average discount rate for operating lease calculated at point in time.",
        "label": "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent",
        "terseLabel": "Operating Lease, Weighted Average Discount Rate, Percent"
       }
      }
     },
     "localname": "OperatingLeaseWeightedAverageDiscountRatePercent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-7-leases-details-textual"
     ],
     "xbrltype": "percentItemType"
    },
    "us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1": {
     "auth_ref": [
      "r308",
      "r366"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Weighted average remaining lease term for operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.",
        "label": "us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1",
        "terseLabel": "Operating Lease, Weighted Average Remaining Lease Term (Month)"
       }
      }
     },
     "localname": "OperatingLeaseWeightedAverageRemainingLeaseTerm1",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-7-leases-details-textual"
     ],
     "xbrltype": "durationItemType"
    },
    "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock": {
     "auth_ref": [
      "r0",
      "r74"
     ],
     "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]"
       }
      }
     },
     "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-1-general"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_OtherAssetsMember": {
     "auth_ref": [
      "r75",
      "r77"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Primary financial statement caption encompassing other assets.",
        "label": "Other Assets [Member]"
       }
      }
     },
     "localname": "OtherAssetsMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-7-leases",
      "http://http/20230131/role/statement-note-7-leases-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_OtherAssetsNoncurrent": {
     "auth_ref": [
      "r110"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "order": 1.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of noncurrent assets classified as other.",
        "label": "Other assets, net"
       }
      }
     },
     "localname": "OtherAssetsNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherIncomeAndExpensesAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Other income (expense), net:"
       }
      }
     },
     "localname": "OtherIncomeAndExpensesAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-operations-unaudited-"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_OtherLiabilitiesNoncurrent": {
     "auth_ref": [
      "r19"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "order": 3.0,
       "parentTag": "us-gaap_Liabilities",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of liabilities classified as other, due after one year or the normal operating cycle, if longer.",
        "label": "Other noncurrent liabilities"
       }
      }
     },
     "localname": "OtherLiabilitiesNoncurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherNoncurrentLiabilitiesMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Primary financial statement caption encompassing other noncurrent liabilities.",
        "label": "Other Noncurrent Liabilities [Member]"
       }
      }
     },
     "localname": "OtherNoncurrentLiabilitiesMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-7-leases",
      "http://http/20230131/role/statement-note-7-leases-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_OtherNonoperatingIncomeExpense": {
     "auth_ref": [
      "r28"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-operations-unaudited-": {
       "order": 1.0,
       "parentTag": "us-gaap_NonoperatingIncomeExpense",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of income (expense) related to nonoperating activities, classified as other.",
        "label": "Other, net"
       }
      }
     },
     "localname": "OtherNonoperatingIncomeExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-operations-unaudited-"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_OtherReceivables": {
     "auth_ref": [
      "r113"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "order": 2.0,
       "parentTag": "us-gaap_AssetsCurrent",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount due from parties in nontrade transactions, classified as other.",
        "label": "Other receivables"
       }
      }
     },
     "localname": "OtherReceivables",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsOfFinancingCosts": {
     "auth_ref": [
      "r32"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "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": "us-gaap_PaymentsOfFinancingCosts",
        "negatedLabel": "Payments for financing costs"
       }
      }
     },
     "localname": "PaymentsOfFinancingCosts",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquireIntangibleAssets": {
     "auth_ref": [
      "r29"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow to acquire asset without physical form usually arising from contractual or other legal rights, excluding goodwill.",
        "label": "us-gaap_PaymentsToAcquireIntangibleAssets",
        "negatedLabel": "Investment in intangible assets"
       }
      }
     },
     "localname": "PaymentsToAcquireIntangibleAssets",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": {
     "auth_ref": [
      "r29"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "order": 0.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets.",
        "label": "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment",
        "negatedLabel": "Purchase of and deposits for the purchase of property and equipment"
       }
      }
     },
     "localname": "PaymentsToAcquirePropertyPlantAndEquipment",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PlanNameAxis": {
     "auth_ref": [
      "r393",
      "r394",
      "r395",
      "r396",
      "r397",
      "r398",
      "r399",
      "r400",
      "r401",
      "r402",
      "r403",
      "r404",
      "r405",
      "r406",
      "r407",
      "r408",
      "r409",
      "r410",
      "r411",
      "r412",
      "r413",
      "r414",
      "r415",
      "r416",
      "r417",
      "r418"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by plan name for share-based payment arrangement.",
        "label": "Plan Name [Axis]"
       }
      }
     },
     "localname": "PlanNameAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-2-stock-incentive-plans-and-other-sharebased-compensation",
      "http://http/20230131/role/statement-note-2-stock-incentive-plans-and-other-sharebased-compensation-details-textual"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_PlanNameDomain": {
     "auth_ref": [
      "r393",
      "r394",
      "r395",
      "r396",
      "r397",
      "r398",
      "r399",
      "r400",
      "r401",
      "r402",
      "r403",
      "r404",
      "r405",
      "r406",
      "r407",
      "r408",
      "r409",
      "r410",
      "r411",
      "r412",
      "r413",
      "r414",
      "r415",
      "r416",
      "r417",
      "r418"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Plan name for share-based payment arrangement.",
        "label": "Plan Name [Domain]"
       }
      }
     },
     "localname": "PlanNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-2-stock-incentive-plans-and-other-sharebased-compensation",
      "http://http/20230131/role/statement-note-2-stock-incentive-plans-and-other-sharebased-compensation-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_PreferredStockNoParValue": {
     "auth_ref": [
      "r3",
      "r390"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Face amount per share of no-par value preferred stock nonredeemable or redeemable solely at the option of the issuer.",
        "label": "us-gaap_PreferredStockNoParValue",
        "terseLabel": "Preferred Stock, No Par Value (in dollars per share)"
       }
      }
     },
     "localname": "PreferredStockNoParValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals"
     ],
     "xbrltype": "perShareItemType"
    },
    "us-gaap_PreferredStockSharesAuthorized": {
     "auth_ref": [
      "r3"
     ],
     "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": "us-gaap_PreferredStockSharesAuthorized",
        "terseLabel": "Preferred Stock, Shares Authorized (in shares)"
       }
      }
     },
     "localname": "PreferredStockSharesAuthorized",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_PreferredStockSharesIssued": {
     "auth_ref": [
      "r3",
      "r211"
     ],
     "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": "us-gaap_PreferredStockSharesIssued",
        "terseLabel": "Preferred Stock, Shares Issued (in shares)"
       }
      }
     },
     "localname": "PreferredStockSharesIssued",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_PreferredStockSharesOutstanding": {
     "auth_ref": [
      "r3"
     ],
     "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": "us-gaap_PreferredStockSharesOutstanding",
        "terseLabel": "Preferred Stock, Shares Outstanding, Ending Balance (in shares)"
       }
      }
     },
     "localname": "PreferredStockSharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_PreferredStockValue": {
     "auth_ref": [
      "r3",
      "r367"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "order": 0.0,
       "parentTag": "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest",
       "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, no par value, authorized 1,000,000 shares; none issued and outstanding"
       }
      }
     },
     "localname": "PreferredStockValue",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PrepaidExpenseAndOtherAssetsCurrent": {
     "auth_ref": [
      "r376"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "order": 4.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 expenses and other assets"
       }
      }
     },
     "localname": "PrepaidExpenseAndOtherAssetsCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PrimeRateMember": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Interest rate charged by financial institutions to their most creditworthy borrowers.",
        "label": "Prime Rate [Member]"
       }
      }
     },
     "localname": "PrimeRateMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ProceedsFromNotesPayable": {
     "auth_ref": [
      "r30"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "order": 0.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash inflow from a borrowing supported by a written promise to pay an obligation.",
        "label": "Proceeds from note payable, revolver"
       }
      }
     },
     "localname": "ProceedsFromNotesPayable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProductWarrantyAccrual": {
     "auth_ref": [
      "r59",
      "r60",
      "r88"
     ],
     "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": "us-gaap_ProductWarrantyAccrual",
        "periodEndLabel": "Balance at end of period",
        "periodStartLabel": "Balance at beginning of period",
        "terseLabel": "Standard and Extended Product Warranty Accrual, Ending Balance"
       }
      }
     },
     "localname": "ProductWarrantyAccrual",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-5-product-warranties-changes-in-accrual-for-product-warranties-details",
      "http://http/20230131/role/statement-note-5-product-warranties-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProductWarrantyAccrualPayments": {
     "auth_ref": [
      "r55"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of decrease in the standard and extended product warranty accrual from payments made in cash or in kind to satisfy claims under the terms of the standard and extended product warranty.",
        "label": "us-gaap_ProductWarrantyAccrualPayments",
        "negatedLabel": "Warranty claims and costs paid during the period"
       }
      }
     },
     "localname": "ProductWarrantyAccrualPayments",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-5-product-warranties-changes-in-accrual-for-product-warranties-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProductWarrantyAccrualPreexistingIncreaseDecrease": {
     "auth_ref": [
      "r58"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase (decrease) in the standard and extended product warranty accrual from changes in estimates attributable to preexisting product warranties.",
        "label": "Changes in liability for pre-existing warranties during the period"
       }
      }
     },
     "localname": "ProductWarrantyAccrualPreexistingIncreaseDecrease",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-5-product-warranties-changes-in-accrual-for-product-warranties-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProductWarrantyAccrualWarrantiesIssued": {
     "auth_ref": [
      "r56"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase in the standard and extended product warranty accrual from warranties issued.",
        "label": "Liabilities accrued for warranties issued during the period"
       }
      }
     },
     "localname": "ProductWarrantyAccrualWarrantiesIssued",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-5-product-warranties-changes-in-accrual-for-product-warranties-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProductWarrantyDisclosureTextBlock": {
     "auth_ref": [
      "r62"
     ],
     "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]"
       }
      }
     },
     "localname": "ProductWarrantyDisclosureTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-5-product-warranties"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ProductWarrantyExpense": {
     "auth_ref": [
      "r35",
      "r57"
     ],
     "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": "us-gaap_ProductWarrantyExpense",
        "terseLabel": "Product Warranty Expense"
       }
      }
     },
     "localname": "ProductWarrantyExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-5-product-warranties-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_PropertyPlantAndEquipmentNet": {
     "auth_ref": [
      "r53",
      "r99",
      "r322",
      "r367"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "order": 3.0,
       "parentTag": "us-gaap_Assets",
       "weight": 1.0
      }
     },
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.",
        "label": "Property and equipment, net"
       }
      }
     },
     "localname": "PropertyPlantAndEquipmentNet",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ProvisionForDoubtfulAccounts": {
     "auth_ref": [
      "r125",
      "r189"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "order": 8.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": "Bad debt recovery"
       }
      }
     },
     "localname": "ProvisionForDoubtfulAccounts",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited",
      "http://http/20230131/role/statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-summary-of-changes-in-the-allowance-for-doubtful-accounts-for-trade-accounts-receivable-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RepaymentsOfLongTermDebt": {
     "auth_ref": [
      "r31"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "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": "us-gaap_RepaymentsOfLongTermDebt",
        "negatedLabel": "Principal payments on long-term debt"
       }
      }
     },
     "localname": "RepaymentsOfLongTermDebt",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RepaymentsOfNotesPayable": {
     "auth_ref": [
      "r31"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "order": 1.0,
       "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities",
       "weight": -1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cash outflow for a borrowing supported by a written promise to pay an obligation.",
        "label": "us-gaap_RepaymentsOfNotesPayable",
        "negatedLabel": "Payments on note payable, revolver"
       }
      }
     },
     "localname": "RepaymentsOfNotesPayable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RestrictedStockMember": {
     "auth_ref": [
      "r40"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Stock including a provision that prohibits sale or substantive sale of an equity instrument for a specified period of time or until specified performance conditions are met.",
        "label": "Restricted Stock [Member]"
       }
      }
     },
     "localname": "RestrictedStockMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-2-stock-incentive-plans-and-other-sharebased-compensation",
      "http://http/20230131/role/statement-note-2-stock-incentive-plans-and-other-sharebased-compensation-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RetainedEarningsAccumulatedDeficit": {
     "auth_ref": [
      "r5",
      "r68",
      "r97",
      "r329",
      "r333",
      "r367"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "order": 2.0,
       "parentTag": "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest",
       "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"
       }
      }
     },
     "localname": "RetainedEarningsAccumulatedDeficit",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RetainedEarningsMember": {
     "auth_ref": [
      "r103",
      "r129",
      "r130",
      "r131",
      "r135",
      "r143",
      "r145",
      "r185",
      "r262",
      "r263",
      "r264",
      "r267",
      "r268",
      "r279",
      "r326",
      "r328"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The cumulative amount of the reporting entity's undistributed earnings or deficit.",
        "label": "Retained Earnings [Member]"
       }
      }
     },
     "localname": "RetainedEarningsMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax": {
     "auth_ref": [
      "r161",
      "r162",
      "r167",
      "r170",
      "r171",
      "r175",
      "r176",
      "r178",
      "r223",
      "r224",
      "r316"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-operations-unaudited-": {
       "order": 0.0,
       "parentTag": "us-gaap_GrossProfit",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount, including tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value-added and excise.",
        "label": "Net sales"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerIncludingAssessedTax",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-operations-unaudited-",
      "http://http/20230131/role/statement-note-11-revenue-recognition-revenue-attributed-to-united-states-and-all-other-countries-details"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_RevenueFromContractWithCustomerTextBlock": {
     "auth_ref": [
      "r215",
      "r216",
      "r217",
      "r218",
      "r219",
      "r220",
      "r221",
      "r222",
      "r226",
      "r227"
     ],
     "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]"
       }
      }
     },
     "localname": "RevenueFromContractWithCustomerTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-11-revenue-recognition"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock": {
     "auth_ref": [
      "r45"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of revenue from external customers by geographic areas attributed to the entity's country of domicile and to foreign countries from which the entity derives revenue.",
        "label": "Revenue from External Customers by Geographic Areas [Table Text Block]"
       }
      }
     },
     "localname": "RevenueFromExternalCustomersByGeographicAreasTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-11-revenue-recognition-tables"
     ],
     "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]"
       }
      }
     },
     "localname": "RevolvingCreditFacilityMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability": {
     "auth_ref": [
      "r307",
      "r366"
     ],
     "crdr": "debit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of increase in right-of-use asset obtained in exchange for operating lease liability.",
        "label": "us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability",
        "terseLabel": "Right-of-Use Asset Obtained in Exchange for Operating Lease Liability"
       }
      }
     },
     "localname": "RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-7-leases-details-textual"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_SalesRevenueNetMember": {
     "auth_ref": [
      "r178",
      "r382"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Revenue from sale of product and rendering of service and other sources of income, when it serves as benchmark in concentration of risk calculation.",
        "label": "Revenue Benchmark [Member]"
       }
      }
     },
     "localname": "SalesRevenueNetMember",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-10-segment-information-and-business-and-credit-concentrations",
      "http://http/20230131/role/statement-note-10-segment-information-and-business-and-credit-concentrations-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_ScheduleOfDebtTableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of information pertaining to short-term and long-debt instruments or arrangements, including but not limited to identification of terms, features, collateral requirements and other information necessary to a fair presentation.",
        "label": "Schedule of Debt [Table Text Block]"
       }
      }
     },
     "localname": "ScheduleOfDebtTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": {
     "auth_ref": [
      "r381"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations.",
        "label": "Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]"
       }
      }
     },
     "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-9-net-income-loss-per-share-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": {
     "auth_ref": [
      "r1",
      "r9",
      "r10",
      "r11"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Tabular disclosure of the carrying amount as of the balance sheet date of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process.",
        "label": "Schedule of Inventory, Current [Table Text Block]"
       }
      }
     },
     "localname": "ScheduleOfInventoryCurrentTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-4-inventories-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock": {
     "auth_ref": [
      "r61"
     ],
     "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]"
       }
      }
     },
     "localname": "ScheduleOfProductWarrantyLiabilityTableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-5-product-warranties-tables"
     ],
     "xbrltype": "textBlockItemType"
    },
    "us-gaap_SellingGeneralAndAdministrativeExpense": {
     "auth_ref": [
      "r26"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-operations-unaudited-": {
       "order": 0.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 expenses"
       }
      }
     },
     "localname": "SellingGeneralAndAdministrativeExpense",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-operations-unaudited-"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensation": {
     "auth_ref": [
      "r35"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": {
       "order": 9.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": "us-gaap_ShareBasedCompensation",
        "terseLabel": "Share-based compensation expense"
       }
      }
     },
     "localname": "ShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant": {
     "auth_ref": [
      "r70"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "The difference between the maximum number of shares (or other type of equity) authorized for issuance under the plan (including the effects of amendments and adjustments), and the sum of: 1) the number of shares (or other type of equity) already issued upon exercise of options or other equity-based awards under the plan; and 2) shares (or other type of equity) reserved for issuance on granting of outstanding awards, net of cancellations and forfeitures, if applicable.",
        "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant",
        "terseLabel": "Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Available for Grant"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-2-stock-incentive-plans-and-other-sharebased-compensation-details-textual"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": {
     "auth_ref": [
      "r231",
      "r232",
      "r233",
      "r234",
      "r235",
      "r236",
      "r237",
      "r238",
      "r239",
      "r240",
      "r241",
      "r242",
      "r243",
      "r244",
      "r245",
      "r246",
      "r247",
      "r248",
      "r249",
      "r250",
      "r251",
      "r252",
      "r253",
      "r254",
      "r255",
      "r256"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Award under share-based payment arrangement.",
        "label": "Award Type [Domain]"
       }
      }
     },
     "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-2-stock-incentive-plans-and-other-sharebased-compensation",
      "http://http/20230131/role/statement-note-2-stock-incentive-plans-and-other-sharebased-compensation-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_SharesOutstanding": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares issued which are neither cancelled nor held in the treasury.",
        "label": "us-gaap_SharesOutstanding",
        "periodEndLabel": "Balances at January 31, 2023 (in shares)",
        "periodStartLabel": "Balances at October 31, 2022 (in shares)"
       }
      }
     },
     "localname": "SharesOutstanding",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number of shares used to settle grantee's tax withholding obligation for award under share-based payment arrangement.",
        "label": "us-gaap_SharesPaidForTaxWithholdingForShareBasedCompensation",
        "terseLabel": "Share-Based Payment Arrangement, Shares Withheld for Tax Withholding Obligation"
       }
      }
     },
     "localname": "SharesPaidForTaxWithholdingForShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-2-stock-incentive-plans-and-other-sharebased-compensation-details-textual"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StatementEquityComponentsAxis": {
     "auth_ref": [
      "r21",
      "r67",
      "r103",
      "r120",
      "r121",
      "r122",
      "r129",
      "r130",
      "r131",
      "r135",
      "r143",
      "r145",
      "r160",
      "r185",
      "r212",
      "r262",
      "r263",
      "r264",
      "r267",
      "r268",
      "r279",
      "r290",
      "r291",
      "r292",
      "r293",
      "r294",
      "r295",
      "r312",
      "r326",
      "r327",
      "r328"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by component of equity.",
        "label": "Equity Components [Axis]"
       }
      }
     },
     "localname": "StatementEquityComponentsAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementLineItems": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.",
        "label": "Statement [Line Items]"
       }
      }
     },
     "localname": "StatementLineItems",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited",
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals",
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited",
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-operations-unaudited-",
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited",
      "http://http/20230131/role/statement-note-1-general",
      "http://http/20230131/role/statement-note-10-segment-information-and-business-and-credit-concentrations",
      "http://http/20230131/role/statement-note-10-segment-information-and-business-and-credit-concentrations-details-textual",
      "http://http/20230131/role/statement-note-11-revenue-recognition",
      "http://http/20230131/role/statement-note-11-revenue-recognition-details-textual",
      "http://http/20230131/role/statement-note-11-revenue-recognition-revenue-attributed-to-united-states-and-all-other-countries-details",
      "http://http/20230131/role/statement-note-11-revenue-recognition-tables",
      "http://http/20230131/role/statement-note-12-contingencies",
      "http://http/20230131/role/statement-note-13-new-accounting-standards-not-yet-adopted",
      "http://http/20230131/role/statement-note-2-stock-incentive-plans-and-other-sharebased-compensation",
      "http://http/20230131/role/statement-note-2-stock-incentive-plans-and-other-sharebased-compensation-details-textual",
      "http://http/20230131/role/statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable",
      "http://http/20230131/role/statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-summary-of-changes-in-the-allowance-for-doubtful-accounts-for-trade-accounts-receivable-details",
      "http://http/20230131/role/statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-tables",
      "http://http/20230131/role/statement-note-4-inventories",
      "http://http/20230131/role/statement-note-4-inventories-components-of-inventories-details",
      "http://http/20230131/role/statement-note-4-inventories-tables",
      "http://http/20230131/role/statement-note-5-product-warranties",
      "http://http/20230131/role/statement-note-5-product-warranties-changes-in-accrual-for-product-warranties-details",
      "http://http/20230131/role/statement-note-5-product-warranties-details-textual",
      "http://http/20230131/role/statement-note-5-product-warranties-tables",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-details-textual",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details-parentheticals",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-tables",
      "http://http/20230131/role/statement-note-7-leases",
      "http://http/20230131/role/statement-note-7-leases-details-textual",
      "http://http/20230131/role/statement-note-7-leases-future-payments-due-details",
      "http://http/20230131/role/statement-note-7-leases-tables",
      "http://http/20230131/role/statement-note-8-fair-value-measurements",
      "http://http/20230131/role/statement-note-9-net-income-loss-per-share",
      "http://http/20230131/role/statement-note-9-net-income-loss-per-share-components-of-reconciliation-of-numerators-and-denominators-net-loss-per-share-details",
      "http://http/20230131/role/statement-note-9-net-income-loss-per-share-details-textual",
      "http://http/20230131/role/statement-note-9-net-income-loss-per-share-tables"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfCashFlowsAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Cash Flows [Abstract]"
       }
      }
     },
     "localname": "StatementOfCashFlowsAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfFinancialPositionAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Financial Position [Abstract]"
       }
      }
     },
     "localname": "StatementOfFinancialPositionAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementOfStockholdersEquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Statement of Stockholders' Equity [Abstract]"
       }
      }
     },
     "localname": "StatementOfStockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "xbrltype": "stringItemType"
    },
    "us-gaap_StatementTable": {
     "auth_ref": [
      "r129",
      "r130",
      "r131",
      "r160",
      "r316"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Schedule reflecting a Statement of Income, Statement of Cash Flows, Statement of Financial Position, Statement of Shareholders' Equity and Other Comprehensive Income, or other statement as needed.",
        "label": "Statement [Table]"
       }
      }
     },
     "localname": "StatementTable",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited",
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited-parentheticals",
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited",
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-operations-unaudited-",
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited",
      "http://http/20230131/role/statement-note-1-general",
      "http://http/20230131/role/statement-note-10-segment-information-and-business-and-credit-concentrations",
      "http://http/20230131/role/statement-note-10-segment-information-and-business-and-credit-concentrations-details-textual",
      "http://http/20230131/role/statement-note-11-revenue-recognition",
      "http://http/20230131/role/statement-note-11-revenue-recognition-details-textual",
      "http://http/20230131/role/statement-note-11-revenue-recognition-revenue-attributed-to-united-states-and-all-other-countries-details",
      "http://http/20230131/role/statement-note-11-revenue-recognition-tables",
      "http://http/20230131/role/statement-note-12-contingencies",
      "http://http/20230131/role/statement-note-13-new-accounting-standards-not-yet-adopted",
      "http://http/20230131/role/statement-note-2-stock-incentive-plans-and-other-sharebased-compensation",
      "http://http/20230131/role/statement-note-2-stock-incentive-plans-and-other-sharebased-compensation-details-textual",
      "http://http/20230131/role/statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable",
      "http://http/20230131/role/statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-summary-of-changes-in-the-allowance-for-doubtful-accounts-for-trade-accounts-receivable-details",
      "http://http/20230131/role/statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-tables",
      "http://http/20230131/role/statement-note-4-inventories",
      "http://http/20230131/role/statement-note-4-inventories-components-of-inventories-details",
      "http://http/20230131/role/statement-note-4-inventories-tables",
      "http://http/20230131/role/statement-note-5-product-warranties",
      "http://http/20230131/role/statement-note-5-product-warranties-changes-in-accrual-for-product-warranties-details",
      "http://http/20230131/role/statement-note-5-product-warranties-details-textual",
      "http://http/20230131/role/statement-note-5-product-warranties-tables",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-details-textual",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-longterm-debt-details-parentheticals",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-tables",
      "http://http/20230131/role/statement-note-7-leases",
      "http://http/20230131/role/statement-note-7-leases-details-textual",
      "http://http/20230131/role/statement-note-7-leases-future-payments-due-details",
      "http://http/20230131/role/statement-note-7-leases-tables",
      "http://http/20230131/role/statement-note-8-fair-value-measurements",
      "http://http/20230131/role/statement-note-9-net-income-loss-per-share",
      "http://http/20230131/role/statement-note-9-net-income-loss-per-share-components-of-reconciliation-of-numerators-and-denominators-net-loss-per-share-details",
      "http://http/20230131/role/statement-note-9-net-income-loss-per-share-details-textual",
      "http://http/20230131/role/statement-note-9-net-income-loss-per-share-tables"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation": {
     "auth_ref": [
      "r3",
      "r4",
      "r67",
      "r68"
     ],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Number, after forfeiture, of shares or units issued under share-based payment arrangement. Excludes shares or units issued under employee stock ownership plan (ESOP).",
        "label": "us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation",
        "negatedLabel": "Share-based compensation, net (in shares)"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodSharesShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited"
     ],
     "xbrltype": "sharesItemType"
    },
    "us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation": {
     "auth_ref": [
      "r3",
      "r4",
      "r68",
      "r69"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Value, after forfeiture, of shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP).",
        "label": "us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation",
        "terseLabel": "Share-based compensation, net"
       }
      }
     },
     "localname": "StockIssuedDuringPeriodValueShareBasedCompensation",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockholdersEquity": {
     "auth_ref": [
      "r4",
      "r6",
      "r7",
      "r46",
      "r367",
      "r378",
      "r384",
      "r421"
     ],
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which are attributable to the parent. The amount of the economic entity's stockholders' equity attributable to the parent excludes the amount of stockholders' equity which is allocable to that ownership interest in subsidiary equity which is not attributable to the parent (noncontrolling interest, minority interest). This excludes temporary equity and is sometimes called permanent equity.",
        "label": "us-gaap_StockholdersEquity",
        "periodEndLabel": "Balances at January 31, 2023",
        "periodStartLabel": "Balances at October 31, 2022"
       }
      }
     },
     "localname": "StockholdersEquity",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-statements-of-shareholders-equity-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_StockholdersEquityAbstract": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "Shareholders\u2019 equity:"
       }
      }
     },
     "localname": "StockholdersEquityAbstract",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest": {
     "auth_ref": [
      "r71",
      "r72",
      "r73",
      "r103",
      "r104",
      "r121",
      "r129",
      "r130",
      "r131",
      "r135",
      "r143",
      "r185",
      "r212",
      "r262",
      "r263",
      "r264",
      "r267",
      "r268",
      "r279",
      "r290",
      "r291",
      "r295",
      "r312",
      "r327",
      "r328",
      "r378",
      "r384",
      "r421"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "order": 0.0,
       "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Amount of stockholders' equity (deficit), net of receivables from officers, directors, owners, and affiliates of the entity, attributable to both the parent and noncontrolling interests. Amount excludes temporary equity. Alternate caption for the concept is permanent equity.",
        "label": "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest",
        "totalLabel": "Total shareholders\u2019 equity"
       }
      }
     },
     "localname": "StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_TableTextBlock": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "label": "us-gaap_TableTextBlock",
        "terseLabel": "Notes Tables"
       }
      }
     },
     "localname": "TableTextBlock",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-11-revenue-recognition-tables",
      "http://http/20230131/role/statement-note-3-allowance-for-doubtful-accounts-for-trade-accounts-receivable-tables",
      "http://http/20230131/role/statement-note-4-inventories-tables",
      "http://http/20230131/role/statement-note-5-product-warranties-tables",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-tables",
      "http://http/20230131/role/statement-note-7-leases-tables",
      "http://http/20230131/role/statement-note-9-net-income-loss-per-share-tables"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_TaxesPayableCurrent": {
     "auth_ref": [
      "r13"
     ],
     "calculation": {
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited": {
       "order": 3.0,
       "parentTag": "us-gaap_LiabilitiesCurrent",
       "weight": 1.0
      }
     },
     "crdr": "credit",
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable for statutory income, sales, use, payroll, excise, real, property and other taxes. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).",
        "label": "Income taxes payable"
       }
      }
     },
     "localname": "TaxesPayableCurrent",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-condensed-consolidated-balance-sheets-unaudited"
     ],
     "xbrltype": "monetaryItemType"
    },
    "us-gaap_VariableRateAxis": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Information by type of variable rate.",
        "label": "Variable Rate [Axis]"
       }
      }
     },
     "localname": "VariableRateAxis",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-details-textual"
     ],
     "xbrltype": "stringItemType"
    },
    "us-gaap_VariableRateDomain": {
     "auth_ref": [],
     "lang": {
      "en-us": {
       "role": {
        "documentation": "Interest rate that fluctuates over time as a result of an underlying benchmark interest rate or index.",
        "label": "Variable Rate [Domain]"
       }
      }
     },
     "localname": "VariableRateDomain",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-",
      "http://http/20230131/role/statement-note-6-longterm-debt-and-notes-payable-details-textual"
     ],
     "xbrltype": "domainItemType"
    },
    "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": {
     "auth_ref": [
      "r149",
      "r154"
     ],
     "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": "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic",
        "verboseLabel": "Shares (denominator) (in shares)"
       }
      }
     },
     "localname": "WeightedAverageNumberOfSharesOutstandingBasic",
     "nsuri": "http://fasb.org/us-gaap/2022",
     "presentation": [
      "http://http/20230131/role/statement-note-9-net-income-loss-per-share-components-of-reconciliation-of-numerators-and-denominators-net-loss-per-share-details"
     ],
     "xbrltype": "sharesItemType"
    }
   },
   "unitCount": 8
  }
 },
 "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(6)(b))",
   "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": "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"
  },
  "r101": {
   "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"
  },
  "r102": {
   "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"
  },
  "r103": {
   "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"
  },
  "r104": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "65",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "105",
   "URI": "https://asc.fasb.org/extlink&oid=126987489&loc=SL124442142-165695",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r105": {
   "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"
  },
  "r106": {
   "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"
  },
  "r107": {
   "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"
  },
  "r108": {
   "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"
  },
  "r109": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(1))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r11": {
   "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"
  },
  "r110": {
   "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"
  },
  "r111": {
   "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"
  },
  "r112": {
   "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"
  },
  "r113": {
   "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/2003/role/disclosureRef"
  },
  "r114": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(4))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r115": {
   "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"
  },
  "r116": {
   "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"
  },
  "r117": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.22(a)(2))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r118": {
   "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"
  },
  "r119": {
   "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"
  },
  "r12": {
   "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"
  },
  "r120": {
   "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"
  },
  "r121": {
   "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"
  },
  "r122": {
   "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"
  },
  "r123": {
   "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"
  },
  "r124": {
   "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"
  },
  "r125": {
   "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"
  },
  "r126": {
   "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"
  },
  "r127": {
   "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"
  },
  "r128": {
   "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"
  },
  "r129": {
   "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"
  },
  "r13": {
   "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"
  },
  "r130": {
   "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"
  },
  "r131": {
   "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"
  },
  "r132": {
   "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"
  },
  "r133": {
   "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"
  },
  "r134": {
   "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"
  },
  "r135": {
   "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"
  },
  "r136": {
   "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"
  },
  "r137": {
   "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"
  },
  "r138": {
   "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"
  },
  "r139": {
   "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"
  },
  "r14": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.19-26)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r140": {
   "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"
  },
  "r141": {
   "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"
  },
  "r142": {
   "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"
  },
  "r143": {
   "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"
  },
  "r144": {
   "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"
  },
  "r145": {
   "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"
  },
  "r146": {
   "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"
  },
  "r147": {
   "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"
  },
  "r148": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "250",
   "URI": "https://asc.fasb.org/topic&trid=2122394",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r149": {
   "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"
  },
  "r15": {
   "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"
  },
  "r150": {
   "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"
  },
  "r151": {
   "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"
  },
  "r152": {
   "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"
  },
  "r153": {
   "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"
  },
  "r154": {
   "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"
  },
  "r155": {
   "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"
  },
  "r156": {
   "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"
  },
  "r157": {
   "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"
  },
  "r158": {
   "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"
  },
  "r159": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "260",
   "URI": "https://asc.fasb.org/topic&trid=2144383",
   "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.21)",
   "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": "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"
  },
  "r161": {
   "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"
  },
  "r162": {
   "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"
  },
  "r163": {
   "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"
  },
  "r164": {
   "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"
  },
  "r165": {
   "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"
  },
  "r166": {
   "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"
  },
  "r167": {
   "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"
  },
  "r168": {
   "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"
  },
  "r169": {
   "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"
  },
  "r17": {
   "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"
  },
  "r170": {
   "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"
  },
  "r171": {
   "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"
  },
  "r172": {
   "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"
  },
  "r173": {
   "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"
  },
  "r174": {
   "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"
  },
  "r175": {
   "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"
  },
  "r176": {
   "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"
  },
  "r177": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "41",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9038-108599",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r178": {
   "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"
  },
  "r179": {
   "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"
  },
  "r18": {
   "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"
  },
  "r180": {
   "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"
  },
  "r181": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=123577603&loc=d3e5074-111524",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r182": {
   "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"
  },
  "r183": {
   "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"
  },
  "r184": {
   "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"
  },
  "r185": {
   "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"
  },
  "r186": {
   "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"
  },
  "r187": {
   "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"
  },
  "r188": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Topic": "326",
   "URI": "https://asc.fasb.org/extlink&oid=124255206&loc=SL82895884-210446",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r189": {
   "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"
  },
  "r19": {
   "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"
  },
  "r190": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "330",
   "URI": "https://asc.fasb.org/topic&trid=2126998",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r191": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "440",
   "URI": "https://asc.fasb.org/extlink&oid=123406679&loc=d3e25336-109308",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r192": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "440",
   "URI": "https://asc.fasb.org/extlink&oid=123406679&loc=d3e25336-109308",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r193": {
   "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"
  },
  "r194": {
   "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"
  },
  "r195": {
   "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"
  },
  "r196": {
   "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"
  },
  "r197": {
   "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"
  },
  "r198": {
   "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"
  },
  "r199": {
   "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"
  },
  "r2": {
   "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"
  },
  "r20": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02.25)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r200": {
   "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"
  },
  "r201": {
   "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"
  },
  "r202": {
   "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"
  },
  "r203": {
   "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"
  },
  "r204": {
   "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"
  },
  "r205": {
   "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"
  },
  "r206": {
   "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"
  },
  "r207": {
   "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"
  },
  "r208": {
   "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"
  },
  "r209": {
   "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"
  },
  "r21": {
   "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"
  },
  "r210": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "6",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=123466204&loc=SL6036836-161870",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r211": {
   "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"
  },
  "r212": {
   "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"
  },
  "r213": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126919976&loc=SL49130531-203044",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r214": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126919976&loc=SL49130532-203044",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r215": {
   "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"
  },
  "r216": {
   "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"
  },
  "r217": {
   "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"
  },
  "r218": {
   "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"
  },
  "r219": {
   "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"
  },
  "r22": {
   "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"
  },
  "r220": {
   "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"
  },
  "r221": {
   "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"
  },
  "r222": {
   "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"
  },
  "r223": {
   "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"
  },
  "r224": {
   "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"
  },
  "r225": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130549-203045",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r226": {
   "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"
  },
  "r227": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "606",
   "URI": "https://asc.fasb.org/topic&trid=49130388",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r228": {
   "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"
  },
  "r229": {
   "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"
  },
  "r23": {
   "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"
  },
  "r230": {
   "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"
  },
  "r231": {
   "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"
  },
  "r232": {
   "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"
  },
  "r233": {
   "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"
  },
  "r234": {
   "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"
  },
  "r235": {
   "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"
  },
  "r236": {
   "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"
  },
  "r237": {
   "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"
  },
  "r238": {
   "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"
  },
  "r239": {
   "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"
  },
  "r24": {
   "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"
  },
  "r240": {
   "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"
  },
  "r241": {
   "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"
  },
  "r242": {
   "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"
  },
  "r243": {
   "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"
  },
  "r244": {
   "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"
  },
  "r245": {
   "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"
  },
  "r246": {
   "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"
  },
  "r247": {
   "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"
  },
  "r248": {
   "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"
  },
  "r249": {
   "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"
  },
  "r25": {
   "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"
  },
  "r250": {
   "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"
  },
  "r251": {
   "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"
  },
  "r252": {
   "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"
  },
  "r253": {
   "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"
  },
  "r254": {
   "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"
  },
  "r255": {
   "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"
  },
  "r256": {
   "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"
  },
  "r257": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(h)(1)(i)",
   "Topic": "718",
   "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r258": {
   "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"
  },
  "r259": {
   "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"
  },
  "r26": {
   "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"
  },
  "r260": {
   "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"
  },
  "r261": {
   "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"
  },
  "r262": {
   "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"
  },
  "r263": {
   "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"
  },
  "r264": {
   "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"
  },
  "r265": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "718",
   "URI": "https://asc.fasb.org/topic&trid=2228938",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r266": {
   "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"
  },
  "r267": {
   "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"
  },
  "r268": {
   "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"
  },
  "r269": {
   "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"
  },
  "r27": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.7)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r270": {
   "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"
  },
  "r271": {
   "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"
  },
  "r272": {
   "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"
  },
  "r273": {
   "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"
  },
  "r274": {
   "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"
  },
  "r275": {
   "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"
  },
  "r276": {
   "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"
  },
  "r277": {
   "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"
  },
  "r278": {
   "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"
  },
  "r279": {
   "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"
  },
  "r28": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-03.9)",
   "Topic": "220",
   "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r280": {
   "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"
  },
  "r281": {
   "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"
  },
  "r282": {
   "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"
  },
  "r283": {
   "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"
  },
  "r284": {
   "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"
  },
  "r285": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r286": {
   "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"
  },
  "r287": {
   "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"
  },
  "r288": {
   "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"
  },
  "r289": {
   "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"
  },
  "r29": {
   "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"
  },
  "r290": {
   "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"
  },
  "r291": {
   "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"
  },
  "r292": {
   "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"
  },
  "r293": {
   "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"
  },
  "r294": {
   "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"
  },
  "r295": {
   "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"
  },
  "r296": {
   "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"
  },
  "r297": {
   "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"
  },
  "r298": {
   "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"
  },
  "r299": {
   "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"
  },
  "r3": {
   "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"
  },
  "r30": {
   "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"
  },
  "r300": {
   "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"
  },
  "r301": {
   "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"
  },
  "r302": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918638-209977",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r303": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918643-209977",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r304": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "5",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(c)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918643-209977",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r305": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r306": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(1)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r307": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(g)(2)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r308": {
   "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"
  },
  "r309": {
   "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"
  },
  "r31": {
   "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"
  },
  "r310": {
   "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"
  },
  "r311": {
   "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"
  },
  "r312": {
   "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"
  },
  "r313": {
   "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"
  },
  "r314": {
   "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"
  },
  "r315": {
   "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"
  },
  "r316": {
   "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"
  },
  "r317": {
   "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"
  },
  "r318": {
   "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"
  },
  "r319": {
   "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"
  },
  "r32": {
   "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"
  },
  "r320": {
   "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"
  },
  "r321": {
   "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"
  },
  "r322": {
   "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"
  },
  "r323": {
   "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"
  },
  "r324": {
   "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"
  },
  "r325": {
   "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"
  },
  "r326": {
   "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"
  },
  "r327": {
   "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"
  },
  "r328": {
   "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"
  },
  "r329": {
   "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"
  },
  "r33": {
   "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"
  },
  "r330": {
   "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"
  },
  "r331": {
   "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"
  },
  "r332": {
   "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"
  },
  "r333": {
   "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"
  },
  "r334": {
   "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"
  },
  "r335": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "310",
   "Subparagraph": "(SX 210.12-29(Footnote 4))",
   "Topic": "948",
   "URI": "https://asc.fasb.org/extlink&oid=120402547&loc=d3e617274-123014",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r336": {
   "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"
  },
  "r337": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "440",
   "Subparagraph": "(a)",
   "Topic": "954",
   "URI": "https://asc.fasb.org/extlink&oid=6491277&loc=d3e6429-115629",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r338": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column B))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r339": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column C))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r34": {
   "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"
  },
  "r340": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column D))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r341": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column E))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r342": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column F))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r343": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column G))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r344": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column H))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r345": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Column I))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r346": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "360",
   "Subparagraph": "(SX 210.12-28(Footnote 2))",
   "Topic": "970",
   "URI": "https://asc.fasb.org/extlink&oid=120402810&loc=d3e638233-123024",
   "role": "http://www.xbrl.org/2003/role/disclosureRef"
  },
  "r347": {
   "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"
  },
  "r348": {
   "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"
  },
  "r349": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r35": {
   "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"
  },
  "r350": {
   "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"
  },
  "r351": {
   "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"
  },
  "r352": {
   "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"
  },
  "r353": {
   "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"
  },
  "r354": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "S99",
   "SubTopic": "10",
   "Subparagraph": "(SX 210.5-02(6)(a)(5))",
   "Topic": "210",
   "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r355": {
   "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"
  },
  "r356": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "30",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "280",
   "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r357": {
   "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"
  },
  "r358": {
   "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"
  },
  "r359": {
   "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"
  },
  "r36": {
   "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"
  },
  "r360": {
   "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"
  },
  "r361": {
   "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"
  },
  "r362": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(b)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r363": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "91",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r364": {
   "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"
  },
  "r365": {
   "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"
  },
  "r366": {
   "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"
  },
  "r367": {
   "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"
  },
  "r368": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(b)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126561865&loc=SL117783719-158441",
   "role": "http://www.xbrl.org/2003/role/exampleRef"
  },
  "r369": {
   "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"
  },
  "r37": {
   "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"
  },
  "r370": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r371": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "b-2",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r372": {
   "Name": "Exchange Act",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "12",
   "Subsection": "d1-1",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r373": {
   "Name": "Form 10-Q",
   "Number": "240",
   "Publisher": "SEC",
   "Section": "308",
   "Subsection": "a",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r374": {
   "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"
  },
  "r375": {
   "Name": "Regulation S-T",
   "Number": "232",
   "Publisher": "SEC",
   "Section": "405",
   "role": "http://www.xbrl.org/2003/role/presentationRef"
  },
  "r376": {
   "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"
  },
  "r377": {
   "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"
  },
  "r378": {
   "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"
  },
  "r379": {
   "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"
  },
  "r38": {
   "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"
  },
  "r380": {
   "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"
  },
  "r381": {
   "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"
  },
  "r382": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r383": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "310",
   "URI": "https://asc.fasb.org/extlink&oid=124259787&loc=d3e4647-111522",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r384": {
   "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"
  },
  "r385": {
   "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"
  },
  "r386": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "450",
   "URI": "https://asc.fasb.org/topic&trid=2127136",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r387": {
   "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"
  },
  "r388": {
   "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"
  },
  "r389": {
   "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"
  },
  "r39": {
   "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"
  },
  "r390": {
   "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/2009/role/commonPracticeRef"
  },
  "r391": {
   "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"
  },
  "r392": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "27",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "606",
   "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130611-203046-203046",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r393": {
   "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"
  },
  "r394": {
   "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"
  },
  "r395": {
   "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"
  },
  "r396": {
   "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"
  },
  "r397": {
   "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"
  },
  "r398": {
   "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"
  },
  "r399": {
   "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"
  },
  "r4": {
   "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"
  },
  "r40": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(c)",
   "Topic": "260",
   "URI": "https://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r400": {
   "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"
  },
  "r401": {
   "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"
  },
  "r402": {
   "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"
  },
  "r403": {
   "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"
  },
  "r404": {
   "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"
  },
  "r405": {
   "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"
  },
  "r406": {
   "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"
  },
  "r407": {
   "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"
  },
  "r408": {
   "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"
  },
  "r409": {
   "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"
  },
  "r41": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "18",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "275",
   "URI": "https://asc.fasb.org/extlink&oid=99393423&loc=d3e6351-108592",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r410": {
   "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"
  },
  "r411": {
   "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"
  },
  "r412": {
   "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"
  },
  "r413": {
   "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"
  },
  "r414": {
   "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"
  },
  "r415": {
   "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"
  },
  "r416": {
   "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"
  },
  "r417": {
   "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"
  },
  "r418": {
   "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"
  },
  "r419": {
   "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"
  },
  "r42": {
   "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"
  },
  "r420": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(bbb)(2)",
   "Topic": "820",
   "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r421": {
   "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"
  },
  "r422": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "20",
   "Subparagraph": "(b)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918638-209977",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r423": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(1)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918673-209980",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r424": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(a)(3)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918673-209980",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r425": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Subparagraph": "(c)(3)",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918673-209980",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r426": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "20",
   "Topic": "842",
   "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918673-209980",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r427": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Topic": "850",
   "URI": "https://asc.fasb.org/extlink&oid=6457730&loc=d3e39599-107864",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r428": {
   "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"
  },
  "r429": {
   "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"
  },
  "r43": {
   "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"
  },
  "r430": {
   "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"
  },
  "r431": {
   "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"
  },
  "r432": {
   "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"
  },
  "r433": {
   "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"
  },
  "r434": {
   "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"
  },
  "r435": {
   "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"
  },
  "r436": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13H",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "40",
   "Subparagraph": "(c)",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=126561865&loc=SL117783719-158441",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r437": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "825",
   "Topic": "944",
   "URI": "https://asc.fasb.org/extlink&oid=123600520&loc=SL75241803-196195",
   "role": "http://www.xbrl.org/2009/role/commonPracticeRef"
  },
  "r44": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "275",
   "URI": "https://asc.fasb.org/topic&trid=2134479",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r45": {
   "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://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r46": {
   "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"
  },
  "r47": {
   "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"
  },
  "r48": {
   "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"
  },
  "r49": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "1",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=6388964&loc=d3e16212-109274",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r5": {
   "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"
  },
  "r50": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "30",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=6388964&loc=d3e16225-109274",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r51": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "((a)(1),(b))",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r52": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "2",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "30",
   "Subparagraph": "(a)(2)",
   "Topic": "350",
   "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r53": {
   "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"
  },
  "r54": {
   "Name": "Accounting Standards Codification",
   "Publisher": "FASB",
   "Topic": "440",
   "URI": "https://asc.fasb.org/topic&trid=2144648",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r55": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "((c)(2))",
   "Topic": "460",
   "URI": "https://asc.fasb.org/extlink&oid=126907703&loc=d3e12565-110249",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r56": {
   "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"
  },
  "r57": {
   "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"
  },
  "r58": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "8",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "((c)(4))",
   "Topic": "460",
   "URI": "https://asc.fasb.org/extlink&oid=126907703&loc=d3e12565-110249",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r59": {
   "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"
  },
  "r6": {
   "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"
  },
  "r60": {
   "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"
  },
  "r61": {
   "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"
  },
  "r62": {
   "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"
  },
  "r63": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "13",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=99376301&loc=d3e1314-112600",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r64": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "14",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "470",
   "URI": "https://asc.fasb.org/extlink&oid=99376301&loc=d3e1336-112600",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r65": {
   "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"
  },
  "r66": {
   "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"
  },
  "r67": {
   "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"
  },
  "r68": {
   "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"
  },
  "r69": {
   "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://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(31))",
   "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": "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"
  },
  "r71": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "15",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=126929396&loc=SL4568447-111683",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r72": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "16",
   "Publisher": "FASB",
   "Section": "45",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=126929396&loc=SL4568740-111683",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r73": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4I",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "810",
   "URI": "https://asc.fasb.org/extlink&oid=120409616&loc=SL4590271-111686",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r74": {
   "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"
  },
  "r75": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4A",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(a)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5618551-113959",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r76": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "4B",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "10",
   "Subparagraph": "(d)",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5624163-113959",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r77": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "182",
   "Publisher": "FASB",
   "Section": "55",
   "SubTopic": "10",
   "Topic": "815",
   "URI": "https://asc.fasb.org/extlink&oid=127000641&loc=SL5629052-113961",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r78": {
   "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"
  },
  "r79": {
   "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"
  },
  "r8": {
   "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"
  },
  "r80": {
   "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"
  },
  "r81": {
   "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"
  },
  "r82": {
   "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"
  },
  "r83": {
   "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"
  },
  "r84": {
   "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"
  },
  "r85": {
   "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"
  },
  "r86": {
   "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"
  },
  "r87": {
   "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"
  },
  "r88": {
   "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"
  },
  "r89": {
   "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"
  },
  "r9": {
   "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"
  },
  "r90": {
   "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"
  },
  "r91": {
   "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"
  },
  "r92": {
   "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"
  },
  "r93": {
   "Name": "Accounting Standards Codification",
   "Paragraph": "3",
   "Publisher": "FASB",
   "Section": "50",
   "SubTopic": "470",
   "Subparagraph": "(c)",
   "Topic": "942",
   "URI": "https://asc.fasb.org/extlink&oid=123599511&loc=d3e64711-112823",
   "role": "http://fasb.org/us-gaap/role/ref/legacyRef"
  },
  "r94": {
   "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"
  },
  "r95": {
   "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"
  },
  "r96": {
   "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"
  },
  "r97": {
   "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"
  },
  "r98": {
   "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"
  },
  "r99": {
   "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"
  }
 },
 "version": "2.2"
}
</TEXT>
</DOCUMENT>
<DOCUMENT>
<TYPE>ZIP
<SEQUENCE>61
<FILENAME>0001437749-23-006415-xbrl.zip
<DESCRIPTION>IDEA: XBRL DOCUMENT
<TEXT>
begin 644 0001437749-23-006415-xbrl.zip
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
M1#4A^9%5<;6A]+K8;X7]B]O9.YVO F]]FE2=BC_ I3+"0$MS*MT$Q-D&&D,
M1.1ILY+FEA=>9KB76+%?3"UA'GS[]4RSWST>=^!@B]5U;$!"3:"#/+D"7_YS
MA!J(S4J<JGRLTS&Q0LWEJ/ZJPM1\3%F1ZBFA=Y+HBH3E"LP!RV\BW^_IEC_H
ML/<I'R@_^KO7]6Q9!O "KAO2^)4W^@5)TQ-OI4&=[1XW!7_X6RWJBU ]YC)1
MK;85:.=T!M?%G?!O'(09!7N=IN _^_#3MNVUKR;7$N*+D6X5#V3H[^'D ^4*
M6/H7A*RX-F YKR$]/?Q/_)TGBF+Q9@ZO]Y6&_C_ 5*3&(DREM:>-OY]]N&U=
MGUU>M'Z^N3C[&W_1O=1[??GF]F:M+8E;1D_N-S(.Q?7ENW^^77B#!7^6_L /
MHFCS9^K#0=M_;O]?4$L#!!0    ( /%!;E;"A'NK0P0  #4,   -    97A?
M-#@S.3,U+FAT;>U7;7/B-A#^?/D56SK-D1D,!I)< H09!TB:ZR5P0*;MIXZP
M9:Q6EAQ)3N!^_:UDG!!RZ<N'ZTUG.@-CM+O:Y]%Z=[7T$I/R?B^A).KOO>D9
M9CCMT]5OAR?MT_91';6]1B'<>X/Z[SP/+JF@BA@:P6(-\R07$55#F5*82&4(
M!P_:C7>-EM]JPU&G]:YSZ,/D&CROWTNI(1 F1&EJSBJYB;V3RD8J2$K/*K%4
M*3%>1 T-#9.B J$4A@JT-I33+)&"G@E9Z>_U&@7EWD)&:]!FS=UV83S-/M%.
MT\],URUCDC*^[KR=LY1JN*$/,)4I$6^[&8DB)I8=GPFH-YGH6J_9,U>;O;!_
METO3W?%0"+OP! H.M1#<$\6(,!T0]DB\"RE12R8ZX$P,71F/<+9$@6++Q"!X
M;]$?K1*V8 ;:K7JSUUCT>XVLO_<*J9<'^M+I2QH;%AL25EWI[XN%SKK?&F,'
MXA\C8-@&H^G\ZN)J$,ROQC<PN9W.;H.;.<S'T#R!V_JL/JC#;#1PVF;[R(=@
M!L%P/)F/AL^L2YM3_QC&%S#_<02S8'H>W(QFWOB7#Z-?(1C,K:;E^ZW_W\^K
M"%O9_7NN#8O7ST&OA"UK490X/#"3@$DH?,R),E3Q-4QIAJT$9 SCS+ 0>\J
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
M +KA)%25\%9,+[4SWW46DA>4^'%5%OF0C74*N>'A"14*:S40!/D8@_-I)S3
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
M)?* RCSIA#UZB;S1TP.072 O1OM26?ZOP5F()0IC"J%2CIHQYMAT'A3S3.;
MS,OBP4R "W>%9*^7=/2*P,Z]N1@IO39?*I:Y!B8\2F!'%+R"2_-?MI6\D[/)
MSLN<=00\G+(=2*4Q6[=M.,U:8)2T/QYH2GT!E:G&: U;KI*!XFR*AIAEUN I
M#'V(L<RIZRN<>\C=-_A'$G0W5"2*G($\^NBW,6A9!&9@9!4A\6>NCNK$&J-&
MCBM3I!X#;[4-5Z(ZFVP_RQZ_6CV5ZHJ94'<V%<IPF)U>#O/.HR('.QLD4/;E
M:G8IJW/KXXK#*Y +P/DV3&:@EY/5UA))ED NYY:(MH_9F<('=(S<23?I)EYA
M[K(.P9N2'#9OU1(^,QAG,VPY-*1HPWGE%6)BXUP]J)5,4>JOQ/-'P4BG?>65
MI?Z6_;W6ZZ/!=3S;E TUQ=NRJ>9RE]UU]Q="%"YGT:^V8'-XR=G:<VL[@]K.
M/?;@C]\**IUQ@A>_I@0-KN4'^G1-Z6)\/@6CUW/TG3!&>T&"W JS8JP'G6>P
M3R;7.TATT/FO?KK#]O/%^0Y V;BWM9,3FX/E,4*KG*-"0R6^TT7,=4&ID''L
MG:V?E=Q!0NCI1E,WV%YCN(DS?7Q%JG>K6W9$;KG<,[V;=6F%*-4TDA0<MF5X
MIU/>ZB C8>=),R'DN4DXUC/R]JDBV K]F)G MOZ=S7;D#<(:66*%S=L!"!4*
M"8(1AYCHTM_&V*M0QQCG5=V0JO. -+@:TN#IS2$-GCX@#1Z0!E:3>=JKR6"^
M1E%*N@:KUB1.F%L .X"3%$\5N70]1!=JSR"RYD B[A,^#]'>+@%E<253SK[9
M0/4 _=PCFR'.7VT:91ADN$UPMJS7)*,(<\YJJ>:&Q02S07DN#GV;D&3<?9T\
M=E%>E*^ND'EE; :-WO+7MJ'M*"]STQE>9N_88.C]4K#/8WYXH I@#I3I65X4
MFJ%_VUE[4^#2;<$LM)6%0@IQZRK,[K(F-(M >K^RU6[\-]YY2^'9:E430J+M
M*'-AR0ZC;@<%^4)S(O!7FW*'DD;D%C8,51@9F0^2TL(B:6\+BB;B8ZM72K0Y
MUEX=0I,6V5>0T$L+[\++%Y0U[%83E&TWCM<_KY[AIHUR7J7PH]D44XZ'<B3)
M F/%/Y4@!:69(:Z@[#@6#&VY25^IN>'=(^],)XV^6N]CR")8LT3'B? 2SX^6
MH[K-GK*1LMFA/6,S&>65)GUTCF#6QS3/!+P ,KX<FK\D?H,Q#.U=@JG,NBLM
MJSA_(^C*4$>,$7<!QEFR@?>$RO![3I ]_>Y1\HFX<>@)T77+,YOU(;%S0TON
MI+JP&>NW(V\."D0B>3GLWHP\#ZED[J]W(R.7N5,.BKE1:LOZD$[% /TPGQ?_
MJZ]L"6XM"'66#5,RI8%1RE^;SB&(4\*N.V)::?_#5]!=:@;I'"&77\]"9D:%
M.LXJ1>J,2;76N@YYTDS:V88+ D*(196?<Y(2N2Z _:)RE$M1#)CA.&_H<#&
M")^4<_GJ@EZ#'U&H"HB:/'_&69?*CF-P&VM": ^#KHA%=@(\-8$K3^=O$] $
M, 2Z/&C,[(:8EAF>$A_G)I,H5EBCY .R@8@PD/KJT$0,SB@49X-+,G==]2+M
MDK^)PG95GP7'I8/KC(?7J;QU4[7Z=&@;K'?8Q;JJIA&<&75HXH.<7HIGN5Y,
MU1M@QDR9*:'+R6,-;^VA'YK)U%W^0.)E/,;YT*5H1%MFTYPQAC,X;*XG5)+_
M$#$!!=IR55Y_IIM/^V5S=]%+,*3 )] H29J41Q^B\%'<<D+^&R?@9<E%CZ:/
M7:8Z;!$[F$!E6<XG4@Z=3C/)7B,-=<A5DX2TL>-DJ?]TX#Y+QJ48M@A]X)"^
M=YY+/U'N$WW+/M*\H,G#55'<>P%T#EBY,'#'-T\N',<IFVK7>Y IE!IO[?8S
MK)LN\W0]Z4 0<A9 ,75C_C*<Q[W=6(*A@MOL<:/4?]9G3*[GV-:(^=-Y:S])
M3,@(X?MHL)4:<.:2HB?^X\J,PP7A=.5XF>/AV&#(8\+\R, E+)G$I9,GA!:(
MG<ZRF%/BM:NQI A]@\=$?U!3%UT;R.$NO;/AU5AJ100I%B$F@"J+B(2K&/>M
MAG<_SH (K)PF<4&<<JSA##:BXD*+NI8S*E3P83W)Y^['H(4-0!5K,&KI34"3
M*,4#*1$W2F[,_KJTUD,_K!_IZ<F<R.G9NQ[W3&%P5%V\;>P,EQ+/G2AAL97P
M6B)NQ1K/U[S/&9G]O\'8:/A?<7=1._LBY*(J*F$!'.<QL]%1,E8JB$:B*P $
MW^-!5O/W(NN__G#<\"^/+G<O*GED.\ZS::M\/3)"TG%RAK7+TF?H\\XIPBJ[
MW=5*OKGFF!>A&8?PJ2]RF?D,W"HC6>V6B.F4,?<B-*?!6EB=03F".M:X\PO-
M0O,"Q% +<H*(543-AM0Q;2X<3P*%.Q H")KWC*3.15;9 $!LH$U6FRZ]58$N
M>IZ7;4T1'=T K^S,SQ5&(0( 8YE/-WG[!IM4GW..UZV=FR)T=3N?&]7M&[R<
M(BD.@+0NDV@I'O,64EUL69Z! ZJPP(2J51IQQVZ-#3!_^@NCN<99#"B[\=_-
M4!GG.%AMBA=Y%6K[QI)+O<B#V^CB"49+CQ^&4WKV3R[=R7? #1A:& AM=4T.
M(:]L L61JU87P#$.90=(,5+9B#/=3.77%#@9?=<!C,C]\0QIXT<*3\Q-=CXG
M-5#,H<@K.3JOOLQUK4B2 KW;)'I.IY"O>^%SUR4R(H:'+;^X]#3/)"A4Y!?=
MZE35,^2MJ^KE71:[03";_[39E!T)KM_C/&8J;B:C4DFI:'9JA 4B EJEY!].
M5@J<5 X@ 6NH&D+,:ZS'6NDZP#Z+]LC%IMA3&#:H91ZI6(7N=CHY$RC7D&(Q
M']30=JA!=?<6.[Q[X)N'A>F4H6\ZDYR0B_3=ZQ2RUDP^1L/=N]5!P3"+92>B
M5SFUVSSHSW!2QG4>R4'!9M#$T<5/3Q]:#M/=B(4-K#P/M.GNQM!M-2)EE6^?
MY]EVS<BN[1W@=5B[IYOH&K4851+R]0= -M64=X]VPWX%L$W<*X9U4WL,0MAL
M<J,Z4)0A"QF89! II&0XF-1WBM0.$:+3Z18V.A.!8#K-4-E.\"([AAF/@7W5
MVG,8[29LYHT8#F)\O=&8%>;L=VKK3OK0R<KIYE"4+;4GMM-$9R6[294.6974
M@%=R!;RHB(X>Q'N,+EA6#]-?TL#"U3)Z^5D /8,S59_%"4^"8C4PJ*,/^4A0
M?=B%Y.*@IZ.$/4H]!L2ZI,]U>NOH>XA/QW?M($71S,72 2V5F2PKNQ/?%>MY
M%Z _SVX.^O/L ?KS /VQT(3GWPB:D'DP^C%H6A9:&87_(D+')EX$79679CQT
M.KXXCU.^AU*=QB\A& +=*']Z=#TTC3J(GS\AK.[L]-4"Z[&XYV - M4&NT1J
MAOF)IIO^"/70J2=Q$U'J:#3S"N?(71YJ"3XM"D^/>L+341?I0QAW61CW(0;[
MO6*P:GU"L,PK[D@<MD\(W$0D=GR'XK!G#T'8AR#LRD'8R?V-P>8QC01]H)H%
MUAYO9-7,8XG(MIH+U%!61VKV[@(5ID$O<,04Z$K$-OZ@P]ZJ\YQKN8U:@I42
MZRQDO-*MEQ3A(@$6D/FK0[$H/L;<W3*;$B6A(T<5M?R^4OEL /+"B!(TXV8%
M*,%2:\V%(C)DM1"[RA8%6G%]F9,I$%V?FZ*NYP.$W%:9[4PQ*2]Z7PI3DII-
M964JJTGXGG+6-O[H]G&GBW%!GL*!"F.LGLLT2TZ&$S4BO]73MUVU0%Q:3T>/
MMTGP<Z=8@_Z./KF#3^J^7U;EN%!59R[\OA['VK4Z4'X3NV+C\Y^!1SB@,$LP
MN=!@6!9F?Z9-<0JA./:X@W9'30K^G\54B"&K^SA^+F#Y>$]JW2#%6KJ]7("[
MI(DZ$%BV%@2OK0$V947Y](H&+7H'E6+09&L3%'S71S0-QTL[('%$==#]^+,;
M%)5]MP7!ZRGEIYJT 2<)>#ALYX:EJ]E\6E[J%*V^I6@8^U?8UD8WBRAY'5MZ
MT3S.^XB7A*U;?3MV)AH=$=Q<R7UEMX)K9-1N3,P[.2_5J23"B43*P^$M<\!&
MC,2!G/+Q><W1"12*634R<AA.;X:>-J492NGJ<C&=W&\D"G/#L95;;"S.A^2%
M)P?['DN*\[10N'6J5@3\EZ.(&&+@ \+$N)3DQTP[QLSV8L-"L*N(_VQJ3'[@
MFV)YHQT'*ZE.MJQ_OP[5?^,)WT4U/=WCUZ+2*WT0%A51$JL.2[]E3L$7((4R
M+QR&RT]M<!4OW\O)7_7Y-R-U/Z(A(1WAV?X1G7\KG+)SNJOKJ]?;=!S):?U3
MZZYQ0@(Y=RF9@KQJDA<O_ZI)-_"CN"9GISJ-YK.Q.RT%5<^%[>G>Q @H$F[9
MJ^3PI4?91?PDN!:!_BAE9E$+4T&.)NR:SI[4T*)QBVFXJIKU @*W[RP@\)D
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
MQV$(:414[C@"!]*O41?]GOL)/E*!5?J_Z:\W#(B#,HEJ;-2>Y:$FKTO3.5:
M1H>&E:)0198,&=\C'):>4D%_'S,@+'$DGF.W2""[ VN=@S(L6U3N)9NC\\BY
M^WJNST;K8KW"26662'VFH5\:H]"MSCW$;5)4AYRH2O)-]6LR;; V[OXZ>'_<
M6JDHE5?!SS3D(=SQ8+<\@)QL6%[)7I3C^'9L)4<VXUV[A77&.M9[%/O*&[R)
M$PG,!UWACM4I:31F<U*32<95@1MR,'><Q][8%(&2NY')/B$6WXB*,6L@;1']
M_0,0XFI B)<W!X1X^0"$N$U B.1O_VG+9C=X,7_81P'Z*B5RE_IG(:1-FLO>
M\>GA_ON#Y/#P$)63UX,*]F/PYNWA\<'^Z='Q"7UXU]6WIUO]_F5K&)E$)XX[
MG'IR(XKE,,R7:_<C"@UU!OQW@/'*NIRV'?1Z:I.537:'1MM)?@"HW +A3$
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
M#AA9[EMJ-_N[EG)H;H1"8#"1<MTTCBG29L$GHDKJ 20Z1A6HN+&RR5.7P0B
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
M)/T4"BMIKJ5 _#"!A.\V^\Z$3@G\_#]02P,$%     @ \4%N5OA_O'8&"@
M6XD  !0   !O8V,M,C R,S Q,S%?8V%L+GAM;.U=;6_C. [^?L#]AVSNLR=)
MNV\=3'?1UT&!SK1(.[=[GQ:*33?".%9.DO-RO_XH-T[3QK(E)Y%58('!I'5(
MF0\M4B1%N9]^7TR2S@RXH"P][0X^]+L=2$,6T?3IM/OM(3A[N+BYZ7:$)&E$
M$I;":3=EW=]_^^<_/OT0!)\A!4XD1)W1LO,XSM((^"6;0.?/\^%M)^CT?_[8
M/[G_TOGV>-$YZA\=!_WC8- /@M\^)33]_E']-R(".BA$*O)?3[MC*:<?>[WY
M?/YA,>+)!\:?>D?]_G&OH.ZNR-6WD5PS;!+_U'O^<DVZ-?3\.*<=G)R<]/)O
MUZ2"EA'BH(/>GU]N'\(Q3$A 4Z614,DBZ$>17[QE(9&Y&FLA=+04ZK>@( O4
MI6!P%!P//BQ$U$6M=SK/JN,L@2'$'?7Y;7BSOJ?ZZ"E5]P?'@Y[ZMH>22IA
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
ME),N7IEQ81U=%HUW7'G'%3*W3FNN9W;S++^7_[LG&17?_']02P,$%     @
M\4%N5N5]]V+[0   M((# !0   !O8V,M,C R,S Q,S%?;&%B+GAM;-5]:7/C
M.++@]XW8_X#M>3%3'2%UE:OZJI[CA<M'/\^Z;*_+-?UZ)S8F:!&2.4T1&I+R
M,;]^ 9"4*(FX$A<KXKWIL@UF)A*90"*1QY_^\WF9HT=<5ADI_OS5T3=OOD*X
MF)$T*Q9__NKSI^GQIY.+BZ]052=%FN2DP'_^JB!?_>=?_N?_^-/_FDY_Q@4N
MDQJGZ/X%W3VLBQ27IV2)T7]_N+U$4_3F^Y_>O+_YB#[?G:"W;]Z^F[YY-SUZ
M,YW^Y4]Y5OSV$_N?^Z3"B!)15/S'/W_U4->KGUZ_?GIZ^N;YOLR_(>7B]=LW
M;]Z][D9_U0YG?TWKS0?]P=^];OZX&7H ^ND='WOT_OW[U_ROFZ%5-C20 CUZ
M_=\?+S_-'O RF68%X\B,T5)E/U7\EY=DEM2<C<HI(.$(]M.T&S9EOYH>O9V^
M._KFN4J_HEQ'J&%=27)\B^>(_??S[840Y_O7;,3K B_8,ETF]SBG-',0#R6>
M#W^7E^7.9XR.]XR.H^\9';\;@E:_K*AL5-ERE>.O7EM3>H/+C*1GA6.2A\%Z
MH?U3G92U#^H/ 3NF_X[42>Z6\D.0KFFF6QAV3/,!2,<T7V''\K$/T!V] $+K
M0R(UJ<O9J$OZKW8@ RC95#F^=@OO <;/-:;G4;MK;F"3V<XDR&PV92?3FZ-F
MC_T=_<4_3LELO<1%?5S0K:+.ZI>+8D[*)=_=.R2<2/Z]UO"&IIP=$:1L9[LS
M7S.PT[S/22T&';*^Q!59E[/F0*68V9&/B^GG3U_]I<.-*'+48$<]]']ZO27V
M<"K'9<?CI)PI:&M'O)X1>IJNZMUYS4NR-& Q,>5;PP9*POZ"[ D)H[[J3(QY
M4MUS^M?5=)$D*SJ/MV]?X[RNNM\P@7K+A:G]Q3^NZP=<WN(9SAZ3^QQ7>T*D
M&F8H/")POH6&XT/E%F%0,5$RD>AR)JQ87%!S>XF9L#ZO<%'AZOB^JLMD5LN$
M1/F1C<@(@8<1H(RC1Z]P@_WK":(GQT_Q9$G-ZWW)TF2@KIP-GE%7I,9WY#PK
MZ#4D2W)J%-:8[7JGN$ZRO+JCQ]\ZR0=.*[,/ >>6'@+?LL2H0'<$;>A &T)0
M2PEJ20E^FADN 8'S-=A6=HFK"N/K%7,'9,7B$M/KZV66W&<Y/8!ODA=&:'6Z
MQE>4RKLGG#_BCZ2H'T0GH2TXX/8'1>M;F&WIDTMX;%[4@HN6A"%L.YP@TA&'
M<D9=E"/"6E*):Y9;'2M5MZM,M_\JZ,8S?3=-\IP\,:?7E)K3TY2L[^OY.I\F
MLQE94[KX;^DIE^+MK[:VX+0>,GP#8@0<9)XI"W("OD-3=-P1BRA9Z+0E%AVW
ME/'?WC%BM[_:VL;!#\=0\D B+/+HCN-?<5+>/1'+4W@/BN?#M\4VMC.W)<OG
M40N>.>R$_?;+.F'WI1!PL XRV,]Y^NTT*Q[I3Z3,Z"YA?CK*OG=YU@WA"7)R
M?4M/KHLMZO&<0U+.JTX5-3O]B-MWTU5)TO6LGCXE99D4-4SJ-,"X%#X)NB R
M^!V5P9N& O3+AH+QB*+.<J@D4IO'?@3S^VE.B@4]H);3%-_7TZ1(^1^JZ2IY
M =X<3&&Z%%E=W$'D]WLJOY>4G"FC!YU2>A"E![&_5>BFH6<\TFR\;"K1AJV%
M'SG_8<HM*,BF*_C4I=3NH0@BG#\PX>18QR."(E:K)$W*/S\"]7[*WMB;QQ(J
MYQ45:EQ.JX>DA&R9^M!<BIT::Q!)?$\E\0K7Z*)]>;JDE'R-;G")/C%2QB.>
M!JNDDEA3UOL1XJ.C:8FI/;S&S'5"%D7&7^G-Y5<+D$O1E2(,(K5'1U1L;QL:
MF,.NHV$\XJJW*"I)->#T.%W?U7JY3,J7*9E/9P]T&2G5&:7_ 5O"39N'OY ^
M]4!3&9.SWO.4OXQ7 /K]IX8/B,S12<,'E!6(\L$2\JOV_?KK\>Q;(Q>98$\8
M044_A)N5&CLK4C!G+YM3_R^ O10(VI]S5DE"#+\M_>ED0Q?;//I_&Z'N0U?5
MS/%KN%3AW@U)L;C#Y?(R*_#U_*3$:2:*0Y0-A;X #H ,(K.M.VB"J*%)\D=Z
M\9NB@@K0NBSIPL1Y]9*QEYCP+."#0N^4H/M^R<+1V$DP,!*PW[K%Z/V9PIBR
MB"\:;)/>VG3'#;G<;AL8.\)-V[%H@)Y,+-<[UNO*[M\!:FF)(NS;RR IHWF*
M.1PR0EVS76_[1QN-11R5-M&_,C/B =?9+ FB7 *,8]"U7<J^!-5#KVYV:/[R
M=5$D'KY44[;F89.MCJL*U]75QK07W&VD8VU2J_9AALFH2CA6GD<5+XU*R,[]
M["DYCX+)"W_Z^Y!4.&7^"UQ40^F_>H.!$C,,-%3<ZS!V2'BKJWD HE@YZBFK
MI9&B60\Y:I,+HZB#0EB(&><\AZO,U_6:LG#5!LE.TS7HX<D$GI? %@G>P-$N
M]!_GG!C411ZCT_4HWT&,%DT[1$9[)<)Y/=M0<'HY/Y':!>*!4(_G <!@:0T'
MF$&9"P[HKP6U8223X.5D4&L?H'Q+1!Q7K5@JB#ZKPD>)[3Y"L-B*8D8I;,X8
M^IMBO60)$Z2LN*6?XH(LLZ+Y!8.Z!PYP*L2C+E04FY]9C"$J[N!A[W9G<NPW
M5YO)\0OW:6]R'#*#V ,XPA,PHH#:!/"%D+J@ 8'=[Y*Z+K/[-2N!59/IFOZ5
M_HN#:&:2Y/F4L$ODE$<=0)_V_5,1(!31 ;51XQA[OSW>3 '5!'WF4VCJ>30[
MRW&>H\;5<=)-88R[20"Q @93.I>5<&Z:V0-.USF^GC.O[1WS0K)**!\HHM\$
M5KS.)U"7C02T;V7J<+.3EWNP_\[Q(T8 XA3\OSCN#AUV$P@/K0LH54/U=(9.
M"O5@8*&D8: A]MU*4!TI?#:.!G.)&<<\"8:@,IO91TX%)51E-JG H+]W9(3=
M8 SYKI0ANRIM7FIVL,BNZ_D)*605 ?4_=%B98Q=!S&(<NY2XJK]A.S_ 8T5#
MQ@1M"&D<QA/$:.%Q]RTUZ!6O^Q36L@5(FZ("AXS%5COX'K+C(FVT'3<.^-.L
MFM$;[KH46HIV0  [O#DRWQIW*(SLHM52U;UD;.FBQJ:NF1EG]FE;%7C@85;F
M:'[ B'Z4T0FFV[FRP$BRPY=YRY?FB8/I:L[G] WSGN7K%%<31*]5**L0O8:A
M/%MFS65V@NC?9F6VZGQFS7=_J&0(^&^62;TN65WFI$CRERKC6&4?=6[REV^"
MG](6ND3<B$BP4_P4K^C%NG&UT7_GF/V#DGN\)&6=_5L61&#R*? DUT'AO;9X
MCP8NIDD/>90CS8CQQ(:;8:-7JILD2\])>9<\_Y+5#P\D9WU=Z"_,8UN H&PB
M7PQ1!HV+,:0-'#7CG0?@F!J.NXM@0,<LN'W!KU&3YC6G0IQ@G*=-_F?RC'HS
M0-?W>;:(I_%6,KT?H&.U2,%3NYA331'E(!YIF=C5@QCLQGB(&G1%=#$#X)UP
M$^C NT[E>7@OG8YD#.2D"9D54.B3HFI#O%5"+QP)%OH#B+Z%_F1 4/BE8A/:
MSN*R(XF.F+_$@&G!1*<)0Y8+S> 8H+CLP JU.^X@A>R+EE1;QWXUH>U1)'IX
M\8D6;P([E?MW97959F^WMTF-I0YEU4=6SF01\+".9!$5<">RNWE9.)!WO'03
MU-&!U%/SZC-6"M2!OUB/F^$NU369_<;,>[HT9_]:\]9BS+M'K?T;=N.GE_\V
M?H(_6A.6P\*\VR2G5"PN"KJDN!*=)6Z!0R_>3H@(=A5W0BWH<AZ)3^#SD@?R
MM03__G<_OCWZX8\(<\+CW+_="COQNS)6CU&[;U[GI+R>S[,99K2MF('^$2_O
M<3GP &7V(>#120^!]Q3%W==.1.E #2%H0PGZ>T.+\<N2KRG"7I-NF;^X:BYE
MNXT5FB>E9M:X(R[\.XVAR!$XDX.=V2=DN20%WQ7^EN1KD<DK&@8\1_?!>;_X
M<WRH8@@GJ"!HE93HD6&>H&1=/Y R^S=.T7=O)F_>\/]O#H3JCRBKJC7]"WN'
M(>NZ8GW>F53^,/GQ^Q\GWWW_8SL0)37Z:U*L607 =T<3WLV=?T0'OG\W.7K_
M;6_@]:PF=,6[@6^C'#'"%26ZRQ3.U9#^<UW5W%MS1[HT"GR%ZR;U@J5)W)&3
MI'JX*<ECEN+TP\OG"J<7Q?8]=%9GCSRW2-$]U"<JJ./# TF^]:U',XM([S(L
M,$NQWS0PS7G"#/TS^^6,3@"MV9M)5O2?Z3>DQ^EPZE4>2,A%CG&B-,\_QYL-
M5GVXB+ZP/V?V(8>ZA$E(@-RLG,X(X$-I3])/S4G:/F5N:4"OJ/HV)UV<\#L=
M61H^X>3L#'?8M05A6R<_"Y=@Y=)PJIV%#8  /9KT,7D_<;K2R6VIG29RIJ&F
MJV81R0\.6 [B@,?Q-OP+;C/K;O:[HUUM] W4:)M\@][)!@^=B:/-?8(: L:W
ML^\)CFQ7'^)A#/VX(C=)J7G//AQKKQM;F!$T8XO<4B]L9F&M%5<$4>R(H^<Z
MD9(\3TIZ\- ;/=>/Z.HQ(#G#RB%B9##5N$N>L5[\B60D4"T&(/I6BK941,TP
M=X9*%&&1<9,8L"B8H)PM5SEYP?@6YTEM8 MK?P<4(B7\ '8O-W%WJK<QVY>*
M%WNT:80MBI#I\YZ &6HG@%59]X2/_K05//K#/VY9S.[@^Y/@KX9"M ?%>P(\
M>XZI>)%1]!$G+!ND>3PZ)<LD*\(FIXHX2!1L"5</=>?5IBM%)]AFY(.A%5$'
M@88RW(:Q0RPW5_, F&X'J:)Z\_!5YU4N)<2,95ZWOH_)<[9<+X6;W^#? =O?
M#AS?HMTBTWPM][#A#7.-*%D1;-.[Y?U=J-PUC5+.DQG/B!P4 Z-O@%N@%+9O
M<=D@1PUVU*&/(T!F_"8@)OHWIXZ?L_U#=/!O4%.*P8AF2#'DD<RH'=X1*4/"
M.;YVY&U@Y=4#H2ZO X#>(TSVMXCPLJ#!3:+/HF!2<D/!8'JU2Y5!2)*10#D9
M@.A;4#8HE=%(1P?!2 4IL" B*8JDR1:$&' YTH[4W'NU]J3=H4YVI09D\'TI
MQF5?BZ?"O6F(49%V)XWW3?4'3O:J&*^<8@H@;@&7\P&X!K;[\&XLRTA>.S7$
M2+C#CN#-\X;DV>QE4VQ&$76I& U5F&&HP;1E&#U(55S-!* G;?P)NP9S,F)U
M$5#)"#%D5Z031!D!H!KNY/0('P<@PF]_<@2.!C@X-\8:$* 4).'Y81L6,)CG
M=4M>DKQ^:4N6GS41>7LZH!P'R.(:A.=;ZH6(31.T;*E_WU!?X 5_337S?S:X
MN^A)C?YXWK@/RR=C/322)4_M)G/4UG!'K]KY?(W:"N_LKIVN2W;"U0^8J6U&
M4OI'_@#-TQ=:1M!3I*A81@(IJO#)9W+%(-K\]NKCW50+_AF319FL'IB35.#S
M58X%^("%,'UK?!]?+$>PFJ'$B$M^)04O]BD8],=HC85(B@AF6$F)%7NA9BDQ
MXE-4AXPRPTCO(X>.F?!Y1G(J7#EH F<;B9PT(THXTA0MA;,F>MK114$M!BKV
M+]1H$BC1T!"@RO1!^0^Z;7 I'1<^2(46)(DBRH,+3'18$;9N[T')T%YYU0\O
MVR%MW-3Q4U*F5VL6[7 ];]7M,<ER%M5\3LJ?Z;?"HD.>T=G4__5 5M :P1[H
M=]=].P8O+6L-]\GO%QQ&]R]HL"8QF\0$-=-@%^3N;.UFPHNN:/#59PUBG[JG
M;"3N6@A"AO&QZ_\YY6?7/H157CY95S59XG)3\8E58*3_E]XESX(-T (2/.3/
M%*/O;8OYD:HDC_3P8;,$Q"%?P]WPVG#G.W(\^]<Z*_%%4=/ER%CV,R\9*KKD
MZ7X'O>>IX >[ZJD( =WV',[.QNO,C,RF$@JK!)-MB(A9RE9?L@B8H?'4ZZ9D
M]7;JEQNZ#O5QD6X*D^GJF1* *X43(HJF>4**G*B@B_G:Z.(-_?T#*[]'K4,6
M;YCB%:FRNN*6(7\KZ0U8M<3RD5B/#Z'T52VA,L757 :'93!OL\5#3>:?JV:K
MN,7I>C;0@L;\0^LRF"($(5Y4]2BQJX'I;GXNTM4X-:PC/:4'<8+H[\8V4=CC
M[''O8;9%S0[\DI'%?KNNNB-_MW$;KP<:N_2G4LT&2W_JL=QS7M\_2=G9_)7@
M858\")3AMP_,?Y>/!EFL9U@)^X@>3[R*P%6RQ-?S'1*$#Z_*L0"!$,(,)Q>Q
M'EW5["1&/ KXZ$K87O5+PCQB]0LO.I'DBJ1XO8_ CZXRX.$>7654P!Y='<W+
MQN[OL*-9GF3+BEOT,U+QZGK90+!4I(=7+?$B,-Z&ZT!S4.%$$2RO_@#:>48(
MV/_.W'0KRK<4Q"GWJ\%;8LZPR-MT^V.F3%PR^=CIMKV/Q+>\]19N4R.4N32>
M-G1T699CWNJ$2Z/<\N3\#E?J5N;-=^*R#^N7ASO?H72"^]U$[PLW)*QQW>+#
MQD&)\3.K]<!ZW\Q*WF@+-_\ULWK5<-P:PF)\W@_S!_9H7C%G3G>>O_#==57B
M:4=4?ZL=\QZKLVYJ"U-W,<().UTQ=L>4U.08&@(5T1XH[^45Z$^((8M9@6.0
M=T2'(<$E0%H#87B0I12$<?;TY"!FQ0,!!P=D(:I_YPK7;OKGP $!I<H<H??S
MCW6RF>?DJ4),%D;4S,9B<8@[C@>O&?P)EX_9# _'^%T1'F^"4Q[.5W'KN/_W
M$U+55Z3^E3W7=-F" MGWCL^R1K%SND+=J[Q- ')5&Q$W+0.&-X' VS!7ELW>
M4M[%!S-2Z6]K]()KM*5V@IH'W F*EZ_@7^$&"E-[7O=(]8V'\_&UQCJI;APH
M+U^*W+ZV,7@6+F)%M&81I++Q0&ZZ ;^^?/O@AGLQSDG9_HJ-.PIM-$B)&)LE
M,4CL%V]>#,YJ5#:'([['-42:27 78V\:Z-6O."GCY 1'4NH0UHJ&Q(1+!NW*
M6%QF!;Z@_Q3Y,L4#H0F8!P!#U)QNJTPSG(@CC>/3DG"3Z+,HW"MCGI.GA,Z*
M"NTI6=_7\W7>-56D0HRS1W7W*1 ,Z)NE":Y@3YLF1(%>0/W.&E[XL$);]/32
MVY')CYNVN"[KSDS/I]%.OGE5HPI9UF8L^)#D?*Y)C>[Q(BL*=MU@J1X:SW01
M9WI6&,:[]>:)65EMO1GZ>A\'[37$"8_#;<H']#"WLE9;8]DGT"U7 MKW#GM7
M)BEF44C-9E/V-IL"\TR(9&?/2=L5W7Y"A_S'=^\G/W[W/1/@OR;%.BE?T+NC
M"6)91CQX\S^^?S_Y_MMW[._7LYJPA/_V[V^C]D26KN5 $V3U @63X-.LFN6$
M]?ZXGO>-YK9Q';.=JX.: =6F**U R!U!!>J!)7;O-K#\SHC^SBA!G)0XEK&K
MU2.>EB3<]I[^<]TD<5<MH7?D+GEF!0<>2,[*#-"S:?A2*MK][2%"#P<XYF#6
M.9Q$D!$7DB,^?$M=]!4_4"GEJ$<ZNK[/LX4&;WP=C0X$G7A8JX!>';IO,=KH
MPK-,Z_I%$7.B_@#LY1$!#G+2M9A__[L?WQ[]\$>>4E^_Q(D<T6 Q,>=;.)&:
M/>!TG=,C="] LTL$>+EC-J7*.(."@8J?(3KO0MG2PRX<+45HDRFVH8E:8;QX
M6&Q;#+Q8Q-4*A'O*KQ]P>46*3:19TV=>\::O]1'T<5\*W+>@<NP:Y>I]/8;K
M<9; V!4N)M10H'S)4C0Q4A( L9T=S@:0_,,%S:"A@Z] 5!/E<*P7@]5W.O\2
MO2VP#?VX2(^;M,##%,_!7LA6,  U>8QQ^=:5S6-)2Q'W.K8TH1Y1FV<2S1[*
M4:8.*VAS4=#;Y+(IO\K^;[=B33^W&66\V"+E3%9LW;BK'N>ZI-164R-T&X%+
M,W&R3K'R_K;^-M5M0/]#-YE] PB\)]'L6_E;&N([6PWX+\[04S)U/)7-*U$-
M8OX_=Y1.JF-::5T^4?FJ: X@R?N9QS CACINCIG7Y30IDFV]1H$K#^C56Y&.
MM:I+$*G*2I/['\>1*&?F02V <915.4^RIAWB]K10/N1J?0.4'BELWU+$D+?-
M+GOHXYL#>@PG("Z&S,-MKK@LI$SD9QD: \^>W<(*448_X]C0*\IO5;\F+Q0#
M?":C(-O\$71+=JQ<XP$I)5H<"6<&;.P2<1V,P3'08[\/*Z1Y&J\4QC#[B!9/
M@LG!?F5^*IMGSVT_C)\)29^R/!>(A\FG0*G10>&_B=I>'X9XSF,CCA,;-@:3
M/U9/@?T_>RQ_3/(F6(.:O-F,A7C1/]![T^XO>B,WG5NH';,B59+_7)+UBG[!
M[!I2U%FQQFF;=TD*T387@P2@/H0D-=0;4\@Y0>R7<?,<G.# :[6XRV[X$KAD
MG!S1\2A^9D24/8J,87F_C).HR0W=+W&WF3@];7EIP-NDQF?S.19ZW.(0$>,T
M,B;VBSB/C&<5?*\-P'>XIZ$)37Z5ME1]S5Z)9Y3^+V_/A>NBJUW7<J%C5($7
M;(H#(^SKO(?:3GHH(;IN13&X1G*N2[3_8O1#>B%D2NRJD>=9D12SG4J 8E>V
M(0"W52('$ 4+*M2F".AN]C9?X,'&3C#6(Y 3Q'I2SSMB>G4QQU064R:%ZG*8
M2E8'T]+MV<CS,@;C%[7& G5O$*9O-=LB11RK9KBA)PF3LY48\2K<59 LEUF3
M.48MK!-^15U@*M/"[5SC"^@E2PS9>]3$%C4/S=Q!'L<DUV S ? N?.E)Y5NW
M9*1MV<EP[]X2U%8E)P._@U_TW\!W2ELK?<J^JT[*7YJ5#(MM, ^4SC8SF"4
MO)=5CVPP#U#DT&!V,E\;@WE=-5D"0T7DQV0LRR005#L^6C8 9BT.VPPC>E[R
MC*F=8$2!:AI\"<X'4&+PGQ# 2=CDI7"+B/"DLH@=I4Q83RSX&?N<N.#E.BW.
M"0D M^?$ *+(Y\0 10[/"2?S=7%.9!TA(STG9!*H/B>4; ZFH3^7U(JDY,TS
MT7DP, *H8SU(H92HAQ*B)584 ]2 XV/.126]GJ1]:+&)!C\".G.J^GK.PMR8
M$Z"M"EU](KFHF8WZ [ K1P38OR>GXO44%PPWJBC&2.X;)6>).;O&X!;4SYV%
M 7'O/(R04ROU)XXJP1:X2'JNQ_$DWC*R6'(9*XEVLJYJLL3EIKZ/4'XUO@&+
MJP1VL/@?&1&@<!VWLP(DQ'04H"=* NIHF&PK5\5L9:4G4 3$SY"E%%:XK%]8
MBF]-%9[%X:R8]E-S7N@U47\"+Y\@!!V@< +'S7=XW"&.ES.AQ68"X9U5V9V;
MK"B268[;Q_(DOTG*NJ"J+2RRH_D%H*2. K)WB6G1HPU^U!$ +I7C?$JPPCBW
M>$7_R@V>S2SGFUFN6IHF*$$Y+E)<HIKP9N E7I&2^S+HMW17^R9\%1Q=<2,
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
MC>@\/F3C@?]8P!NO<M#676@:?V7%@F7@#4:#Z0P'2\8PV'#7CF'\L N(J[G
MKR)= 9 -"4AG/MZD7R$SQ)1YP0R(?N*XM+FZ>"#0:#@$Z%L7=K+_X_90EW"3
MZ+,H=@6O6SS#V2.CT+!ZU\"';BMW]1!$KMK5H\1AQ2[8_'83>>\ T1P\<;?4
MG5+8NEU#0J6NV27D9+@03;QJ.CI4U_,K4N/J)GD9N/WK#H<&5PK !HN<%. '
MA47:S\4JY[U%SBK.%!0]6C7H)U1S'DG^&#C 0UMPB"D' ];JS9;\%!Q,:5>,
M M?BW8'F6P\XNM8RT<I0]U9P=IB)1),SX5Q?U)A.LWS-<DW;0J<9KLZ>9_DZ
MQ>DYG11[ U@WR?77\[.D9"%WU0TN>4E<:0"(4]A0IYH+&H)YX%P0"W+7Q>$2
MQ+?7HQ1M244=K8CI(>I1RQR!';TL\:4I5SV)&>?B5B^(UV6,<H4^?LY$5R'1
M, ?79P8N\.69H8Q_==[AH^#B?,B<@&8+F6&<5DQ^-2Q[U7"P(3,,UK]%T^!M
M-K81&<)*/A-3YD5TQ!S/>#Y^M;W':KMBQ)\Z<\8<HHCGCCFDQ8U#QFJ.UBZ9
MNS)),4I:&GJ^F9&X9B1")G7.J+@:3.4.NE9O"]N(DMYT/@&JF QT*-62T0#K
MO^1R3J#^2_O]UB>Q*S1IB9"LM[J0AUZ?6N^2YXN4HLWFV8R3HL@T4XP'/[8*
MX 9ZD*?8T2[ZN(E=*BX38]8%VWVO2/&YDGK]!D8 ]]8>)/]%*ME_XWKZAAA'
M-+CA-U:#;V+Y19'BY_^-Q5$[@G'PZ(Q=>($VBA8KXF@1Q1LK?$' 3:+-(J]"
M<8L7&>L[4=2"YJBR86"1V 47+E!G%R\L0,>6=GA@SA9SG.ZN4E$@NCSR*LZ#
M<3:B/X/%-TQ,3;OJ48)IA"PC*CZ$NSRNJYHL<7E@GDM-&LVOH%=(.73?$M.A
M1X>WKKCVD"[7"9"5GO:42[Q(\D;4!UX?)", .\L>)-^BPM&A;HL)_^0@8Q[1
MX$BP;8;W%.&INQ('\/ @X":R"\RW(&RP1<D/4C"0Z''%JTEQG*:4?57[G\NL
M./!-:HT%&QL#,,,9S /(85:SDUG 3><6[Z3[!V(4H.LBEA$M$Q1BQ+?P&^'U
M_#PKDF*6)?D-J3)V+BLZ69I\:KMI2E"$VTK)'&VH0!T9])AM"8F\Q^JLPM#.
MJ\W:8#*Y5_VM<:=>SP\:L[.&?C.!<()@ *74")>YN%*H]\1TAVR0LTZK!5G2
M]:43^AJ]R@I4\3\HTB&CS!/VMF9$5!0-A8DB<<+W<,&E2Y:;]>\VW.RBH"0M
M,FK22;O@Z7T$#0>5 O<MGGWL[.#(-OACMG'39#B!<3&$P7Y"_WE=WI$GL3M0
M.-+66-]"#&ZJ;U%;&>HV,W!@IC/TB)1(/0_?)OJ < P9Z")^A9!T:HS52?Y_
ML]4)2<5/.++!MO*^ S2XR.]@MY)ZRWDX$/R& D1)0.K9^);]85D9$G\)XX(9
M%ON1ZS*C7SH6:$8,PO0>[8!K:C',R!*C5SFIJJ_1"I>-Z?X3[]$^XVUA>0(
M3KE=GY(\3\IJ.S!.Q1/Y$A COH;89?DU^+J\*<DC9;ARGQ4,M]UI]\ &WVOW
M\%OMMM9S<;#?<AJ8I:$W(]\[KDAJAO9<*?OBQ?!^>&%%3B79.AI?N(K@W4+V
M_O1Z^.+*4,?,YM'ALRS,5<2\>*+%Z)%64M'XPI5H;2%'$ZV8559T."T3+A'[
M8CQGG"35PWE.GBK]9PSA)_;/%P>@@SY;,.R(HQ_1<X68V\//% H6ZLH8F<V8
MW+Q[<_3NB,L.:ZS^MXRU7LBD3=C;Q=4=;B@S*K#>TU5;W#NE%!EZS1@CW[-)
MVSJB?*_1GM7= T9%0J]15 D25+*IX69J.:7EFZ JH"TXQ)1_?@/,R7))BD\U
MF?UV\.(@O"[I? 0//9< #U@>4$(%L$B@TWE9E KD="!.R 2U+XD]6O3?$?W%
MW^O(%X$Q-YBQ<DFO>Q@WK^^8MS8[;'0F,%I,/@4:+SHH0CWRZM ">='V,T>
MYC6$3-KX$MSU_AM=JS\CN2,VC YY'^76Y"]9_="%)]_B^;I(58U]#;Z$WT]5
M& +F,*M( :8RNY\A+*.9TX&>,M8SKJ6$:2"C9=M;=X+N2)WDL6[GVO)&+%@<
MX[;.#^8'DJ=TZ<[^M6;^4.UKN_I;^_N[&$?0BWR?C#^@AI 17>DU5F+X;J_+
MWH"V&3V5.LU9)SD[H*1.2O4'8#M,!-A_-@FS.7JH&_LCJH=2@\W$G'=1Q4KR
MJ*(:[E"DPJ0G#0M4O-<4)8,5PA3Q'>6"QP=L]E#%<:D8#:]?-035MQPU:%$O
MR2GN":AB+C'D6#@#+,EQ=8L?<;'&5[B6YMA*QT(-K"&8OJ6GQ8<^X&+VL$S*
MR%FT<KX2(V8%$YR6#%;D[^R97K>*).^N%M6'EY\Q693)ZB&;L:9&%<_MN\//
M]0=*QV\"\7( $2B$%IA#B2HO"-D1M[F=5NC^!6WI0YS -N$3,1H1)S*.6+M8
M3^)AD<*9>J18<'L3W]<JX9>.A1IY0S"]6W@4Z90;=;SE^-]C2Z&<L<2(6Q%K
MEEX45/KIZF<&?6,&OG%6I;0'.UYYTAX1;NJ2PF9E79!4>Q[!2I .B8ZT]JB0
M<YY>IED-5]8([&5Y3_(]C1#^'?#>O /'MZ2WR%"#+?C#ZC#/B)(1P;;%_NO1
M14%M %S59\\K7%2B AX:7P"W1 GD4!NBA 3(=NAT1H 'F+V7SXX$I#4E3SNC
MCOP0  MCAG%O;KUFL=R#G[D+Z-X!'R'TMN<+&%5H]S#;Y?'=$EY&%+R.*+-(
M;\%GS@1O%WQ<P1M5X+>(\5+1DW$SF.A=EXND:#/6*8D5R;.4_W!<I#=T<;H8
MTE[=DXT[MCK-JEE.JG6I]%?Y0@,4;=?D^%:%/KT3M$,Q3VWLT[Q;>&=+-MK2
M'=_3X$T>2*A%M@J@/\YS\L2LGW-2GI+U?3U?YUU'"OHKWG3CL$.%6MV\P :$
MYCNCP7OAD8Y0-"<EZDA%'6W\MTT+E,VOMO3"-&I4W(+E">QR+>VXEO2Y5H^B
M<8P?A2!>URV*BV 3W-9UESU=Z_@)9)\Y<!8,@8_A,1BBP]9MX&9N-8NO-/,=
M\)!,M"Y2*HA,-G&*<AYJTO7DG:!YZU[@OX_N3) *F<"CH.:NU0'^:;VDIOO+
M]?SD@;(65Q<%;#.0/O;Z1P0XVOT0Y#TLM*&:9W<V=*.L0/4#/=>M+ #3Y^/Q
M\A-F"71\O=[R]:) =SM\/1_DZ[E3OGHP&SQK'@FW_%$,BEM6A?%Z_KEJBM_U
M*^-IV!4:7SLP+R188E@9$G)LC0VG,[5_K^#D3,E\2@E"G"+>=UISN@%,#AWY
M$U@>VJSV]-I[234BOWD@!18VQQ,- ;SY[H,*D5&\C],T?]B>9DC.(D.*.-98
MW?J$RTYT^!+W6OJY=UTY>YZQ<O [W=YU+EHJ&"XOK")<46^O(J*<764=S'HW
M0,A,QUJO+GI,\C5&'2FCO<XJY5%UM]5C=[@8SJS U) M<9K5Y\F,D[A)7/Y
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
M:^?X<8[S0A0=D<P8B'\V(5KMQR=Y]95LBDM8*.NQ%+,<P.62'<5Q.G^^J!F
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
M\\=#R6CHA0!!J+]W/JQ(5Q"NTXME((CM!C<&GOXG6>=8'&LS-,<%.JXYQ\"
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
M5>W'RGL:)L!-)Q5LE"U4U5NT(WC+/9&3[ '$^RL"$.XGRY&S\/'[E&\7HRS
M&J3F'$QL]58%?UWSJ&+I%R)5UNYA3/7X1RBSOBB2+63!F%/#0*-F;6'G?7^H
MF]Q B+=TLX^8A _TP_1?EZ5?DE?AD?QHT?M8[TCR*K<PAR?%1(43K>_TQZB7
M/(O="SC_GU .EA!<X7^37<2*2+LDDG?@(4PDLGTJA21YQ<-OP\.3RC6Q)G#;
MY)5PI4GLI\%Q72+XSX<]HDB<MM\6CQ-/"X7G7U%V9Y15]DS9],(B)@R$RZC4
MFQ)1&EBDJ=7Z\(9(6:<[]3QTN:J/5]]QF!^=?V/!UGIY:@Y8\ZF!AYXTY#<9
M(>\7%O;A%0$R/GQSGFZU.#NGXND4*L"K!DTH9];3PANFU9-*^:0"Z[)5-L::
M6C&Z(Q'3X"_X5Q85QO%\SRJKP@\I_+J9G$NF:BXOB//K_FO5VY38'<^<1Q!;
MDK*AQ)>D%#5$@Y*4/QZ^^@4IIT[MB=+)*9*J;VKX \\T/E,#P[-]]YS:-E:C
M_2>6@ER[+F7]Z$SNMJ5Z5UZJ2;E3<FT9(14$0Q!LQ$!0J<GU_4%0D5M2K]$N
M$@1W:R@57V'PFO[1T'"M)W:I;:HQO](U=A11&4!C8#")F(SWZ\'RQB]\?P'K
M9VO6=. .I\;\*W#+?\5#M9E56O;]5UY:]E?OA7WO???!"(-6).M#MM63NJUE
MQ!+JQI^!39A@7(7B5+RX]0FV>U*[V8B=8"AVZ9WM+;L%D>8%>Y38[<QLL(2(
M&^9N (J>U)/K11/5%=QRAELGLU#*&6Z(M79#ZK26Y5"I38-U?,D4KNX*<R!K
M_><5/J,XX#!7\TOI A4_YLR/W:SBGY-JSHQ.)AYL A,V6T5BP I@.0.LEU7@
MYP&P1D=J-I4BX:MP0?+="O@K\QGTM67KE6C?-N<UZUE%NT^D&5A8F4(NBJ2T
M9:G1K23[(>-+SBK9-\67W).:8.%VVH5R%=^YZ7YGLPG5-<)>)Y@$+.IB6-R>
MIUZR1-GE?>K$GD*P;>K1QG-WYLTD#P@7 @=]4^.&G$B8V21F6.])W>9R>[/M
M43LNC^D0U<R[@G7F#:HMP;H%+K"B[-)0R@;K:L\JJO4ZBMB@LEQJ$#62:%1^
M15<05D_BX>P[=YMR:Z,AR:"'Y%[EV1PRP++OG&X,,!G U99DI>A!J]VX, 6
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
MP-EBK>8<GA2 M?VV<9!>4L98]KL6;_X_CR#0&/D.#QDYY +HJ G9%?XWK]V
M[%&^"B1KQY#W@*50&OSV0)1S_+@DR%+>-[(P[KEG2%64W19EE=((BYWL_OM^
M5*>^VO#-J^0\<XE#C6REN3:2CYD?NI7>]IG>FA#07D@"U;R MERKRVOD.3\S
M<\HN;6N, 0=\P[]T=W0^=0")S X2=OJ.P^ ?[9&^9JQ3I'0;4KNSV>&&3*NW
M!6B\3[QU8O FS_&F% EO3:G9K$M*;^]X>V='ZWDPQW$Q7O-D69J#9H!6(IF_
MVT,$VS2U$IBXFX/20 K?#K\A?7%#E-G/NLJ<!Z!T)E[%#MJ*U&QOMA6:S4HK
MM<(X>+#V<M X.8.U+C5ZJ%PV.^JR+; 6S,G8V7'-9HN_[9MM.0Z9V-90S]3!
M:C]\O$<&3>(\N9Z#FN#4N./$R-:@BA\JJV_6D/2@788B(D?.069OB)RF5&^V
MI&YKL_8$E?&?P?A_8/SPCD2>F,EL:O#48:J-=5-W7-R^?6:$O4YPL[=$H: B
M\IF2@X3VJ/5-T K,HWZ$4A>"4-G:OC4!M=NWZ2OAG2NH&CD([^V!JBEUNG5)
M[NW=(GAG9C860K%FU'!GONR6B,DJ"WLC5FMN(+\M53WU*.(%5+-S%7%@NK\=
MU;C!W:WD=:E U-I 7F\+1+W69J>N"R&?RV9W]\=XHOY/GA^)P7?==*GYI&/J
M'G4<EJVE:Q76W$I84\YCXS9,\-OA54#N/J=VIM!F0U(4N9!AS0JL^P-K'KN^
M6P"K(M6WOKE;Q> SQ."O3-4:,W)L6([S@0QM:TRLQ,S]XC)V$:V]//9NO5,4
M6%\'Z70-5,K$?SS$VFM4_D(Q$72< *$\=E3S@=#<9>BT&E(SMB[]EI'TH;#^
M@FC8K7NBU NZ?.!1EZHW7?6D=]^;;EL5<'J>"2-*SU71SMP4CQ*W+;RN[>+3
M98,M!*53E]K*MI-W5NF:"C=KX29NFW-=@R4'W,BMKJ2T*QNE".*9&T<ED\D'
M'R=2XK:.UW9.D;(WEFE%/8P-^+;=D>1&,>-$%5AW -8DM1*W^[JV'YPW6N<N
ML2Q+C>[.SZXDG&/,4065.K(IG/)R^@3O@*7C]L+754#;X6:EWI":W9WOBK_%
MSA5:]XC6N#W@=170EG1/NR>UFP>H?$J5T[%Z6VW @*S,#Q"[]+7*IMYH:TV)
MV^5>/SSE;X?XQYMU<PJ(GA<N^\+))NY[1*)=O+HV!4FBF]2>7;EL[.37!*/;
M5*1F<^^Y6!4.UXIWQ>WQKA_O*A(0YYJEAQV#=J]9WJ\',]<;H")\SZ4\BN*
MS, $;H_;CL^F=H"+/>/O"S-9QH-S#3R&OUDWKRI:=G H;<0=!LZFDW)!J:Q(
MG:W;-65H+[EW_;+HI&"5+SWLJ)1(U^RS-<961Y? U'ELR .]-TLC[-9[4J^[
M:XV37WN7"JOYCB[!*VKDD06P*5A#?DRC)75Z.T\BB<7QNW9NEO0- 0]7="H[
M)5^HHZN\_H"F&U.7E:D,V<$R> )_9TD>N&/V U)ZD<_]UN;^YQP':_/[U<WE
MT5G]1-YVRD^EF\H"W23=E"658/O8G6LK /'."^&D5%7OH*=8IQEM*8:?9.HH
MAF>]X[7ZEON85 W%WE-#L4;54*QJ*!9KLE<-Q=:1P]UM]'9,W5",>8U)O9YB
M_I_;:BN6;DF4DUXA&XL]Q'2V%E"\B&UO7=*UJ!J.I=>#[Z;A&):A>LMZV,7.
MTZ[%9%Q+,A+J+$6BO8 *VBFFV"#+^"2@C?^P0:R?NCE04[QD[P^L%K1:T-(M
MZ([ZC>U%7U@N-:INE6LCX=UVJSRWQF/+!%_#4G]N'S<5(Z>ERSUSJ6Z&.]!6
M--DW3>)<\$K6%@P8!9:U'#].U;/U,*C9'UM3TZVH>1C4]/>T*WH>"#V]H'C!
M8V,[[:+<4G;21?D+-:BIPH.H2VY5UQHPVP]6*N7);DOQT-YNCW\V%HY_ZE[^
M6;W6D'\/-HL$\,&MFU@F[AWU7W6G)KP\[N1]9V,@2"C1)S;%1Y@JMU/7<:F)
M>,^6FM:1NKV&)/>VG3M]4*EHJU/,=@VZ[E9 %]>1!V_TO*L+;RLX4T_E-LC-
M5GWO/94KR&6%7"\SY/RHB6_-[0YW'=$'4MY#T<8*=KG KEE/AMTN$*0HDMSJ
M21UY[\40WMGY0$P817.G-J B'72,9S]Y"8*2U<_:I\V:D'C>3'>"+W?[%6^]
M<IPIT[Y.;5 %=\S6+4V8M7[2.M/.0[3.9N$J8&\H>^@O4(+Z6,7SH)KIVI%N
MP:Y=AN(_J3%E.2$1BR(TI8:R]U;":5ZS5MG=(KP@#4C7JR6<'K#ICIQMRRK.
M!;5_,MO2J#,* [;6X.NNU.7FIXTPN_&ZE\5X+J PW:0WZ'L4C@6+"N_TY',6
M&WH]WEYWER6?M^9656<'2F:=P7J2>6>">$_DJT"3&V@2E$2Z+J+Y6MRI:F@4
MV2S)#9?Y;TX7H #9ENR<39&>KCCK%DSUDM0WJE!^""C/H[OG00/V_07/P_D>
MRX?3RA([3U]BI2BLNV[]HF;<ONJVXN^YY8^TNU*KO>LZFE5]HU(ANQ6W=;N]
M8'XN22H=1>HJG0K7%:Y7X%K.C.O]9<)TI09H?[E78;O"]BIL*\G8WDFZ34.J
MUYM272EF7=_$8B>[JCU7[L=7%5O*4[%E5Q'JW1]"257 19D?4JF.D5;5,*KR
M(M6"5@OZ7DH*+)=LJ71 5;8E%6[B*[=4E4(*PM;+!5PJTA2$-.$Z+DB6JI9+
M0?%1; &\6,ZE*AIQ $1=K.I2$?4 B+I<W*4BZR&0=:'&2U7GI2AU7N3RY/T4
M[V!-JQ6S,R87OLY+1VIVMKWG>U#;NX6J?M!J;P5TVTRA:30Z4KO9JR!75LC%
MU;-*![E]UGG!C,1&O:IH55K8Q56TDG=:YT6IMZ1>:^^E@MY?JGI5YV5C""74
M>6GU4C48+6V=ER::MWNP-:HZ+QE$?+N^;3#NK92!W).Z];UKCJK.2[9<M43
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
M,=BIR/(NF,)>7U&)/#&3V7 1!@T.(L9OX:(ZHJ[+\"P@C%T*A]9-]F2YW%M
MS8]ETN'+X@['Y4:?/V&)GR<40D8LF 0$A\?:-0O80Q1A%ZLF\:KP,"I>AWX
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
M#\-*UQJ3S,L<R=6*P*ADUBI:\Z0*1%/,!9#9?,"\BHNU]%MH$R,"**Z8L5?
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
M]!?L;L%@X<V:<>+B=I0@B*&S4Y+]P3TI: 1&\=8I::LSZ9=6]%KLXAODR2@
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
M68%>WTQ7?F7>^ZN/WFFSV?H!#(I#C\N^:"=P!;^]_W!P]?GG@^/3YB_D!8?
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
MJ.&3IF8Z#"&[@.U\@,8WCN4<):*52(4*$ E> 0XZ#DZ\L:#-<T_944KXF//
MZ K&F[-FS2P>^9DCO,9AAAY0$*N$Y@O0[1C'DG\:4GTSVBN,U8*AT9(YN?VB
M;J[4W**(&M3.3& [J2</J#-""LWF GD9#H*DHE"D7=X],RP80;1Q5P?%Z%-Q
M2+<S[]@$;BCJF5$U.14/__"22R3%N1Z&,?F>QBLNADE:<[$4^D0\^!/\]V;!
MBWOD#'M)#J;-?-IP^?/F?>W%B<4'N%,_P5V.__[=T>J(S]I/FH]F+4LLWD^4
MR0K+5</F/Y]'B#3Q&]QDE'EOL0$=$U >9Z'T?Q=G1U_48=WQ3K +^F;XLO,W
MO/^)K_&0![FAY%'_5K/=6FPG O: ]P1^-OGJD8;PTNO>7M/W\#_[S\B=_PCB
M*48Z.BV_R)$/R96>Z!5W&Y[L@-L[*E<_<<#KF4]MY^3!XY++BY<'MEFG%@0[
M=[+M^F1W\60O*#FQ-8J@(C&,&]EN=GVOW3F!_SD\W+^ONM >9[?S_?*BRM5W
M*N9RJTHGOW,+6E86>K:^W]RX7UW;NO%-JVR95\N></1],=U+'O]#/+5UXK=/
MNECO^>@O^ C[N.N'T_6[W69].!O>]-'. _M2'_TDOG\XJ7YX2 +]8:3Z$TAR
MM_]K>X3YLY+DD7_8;M42XJ4<!VC2[E%]'"_E.+"U^HE/XH79XD\@M>=*:6K1
MO1;='/I=T,VUK'@AQ]'UCT]J6_O%'$>KVVAMG>C>-H/;:3#=P_[/_5ITKT4W
MTHA;2XJ7<!A[TK#\Z*>Q7Q_$BECB4\1'*F7V-]9;/E_7XSG%!(S7@55U-N^T
MQ06$:^P(=[5>Z:[6+7S=5?6I3XRN9Y^ B! ;0.UA>[MM;<<>+?-DK.6T]X4_
M:%1.:01 Y10WMZAZZ7BVNX&FK0 .W"U"^KT:2J 2*<"AF2:"8?$ F,VA" I8
M=]WO'_R8UL!4$';!LF']0+BE_J<L2$,2Z,D=>WJ8$XV8DW:?:Y5<I\%D%#+B
MV-R 46(0"VZ TSZ?M(*[[KANG=0=UW7']0YW7/^)C4$1M:AR@TZ5@D7$J$F2
MA3SZM- ;:^6Q[I+E47B"&5/Z,B10&)K?,)GF]\"96BC "S/V8*%I<N.L#0P#
M;(000=M3UR#I\6[!%^6B6\2PPXQ38R$[G+5&08Z+' 71L!J8[J,!^Z&[$$-'
MR?5KN/=MD"(D>8 ]/'VET-Q^U6HY2*N"54(CQ8?K;0WWFW;/G 'IA5[D?(2O
M.9L0W#GW'>,. !O@9&S69.,$ =+QAZ]:[>7+ 3,K'RU'YOM3F9'ITLD)QX6A
M(4U%NEDF87N!>^Q94VY&%$1JN$;$<T%\EUM+T+>*)[3W5*RP@9E>E'^)H]WU
MD\HW!>F<W,+U0$O9%,B$05Q$__,0[!Y.O+T.*OBA.$)>E/PDP1Y6? @8IE_T
M)-!XY@UQ*PEN:O,)]MMH46[HB7$2_Y,D\7?2&9O#02!TOKNA-[L.$OR P:!=
MJ5EX$'IC+L3SFL\![J[ UB6$O[7A=?TJ>-UUW[,"67?MI7\+!'1O3 J0B^7.
M4>I !HF(!_D @!6?40;/W]JW4RE99/=I"&!>N-H 9U09),D"5)&-T&EIF];T
M%M>%,2&4N2?!,ME"$M]0*QBDCE\8J8/5Z7D1JN.M ]6QA5NRBNL?"YIY;@3
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
M%J #(#DA=(T30NA2U0A=9?WC"C>ZV33C#AJ; L&YR3>L3JEVHV/EGJ8Z4GA
M =.TH/1:S4,NW*HRBLT371*4[ICYIQXWC[=5@*XDI+B"5FX5\.V\K* :G$,'
M&:M(/9W&L?D&_K/$;")&)\&!4[3CW 9DS2>N'55-TF1>=1L=O JA*=S%=!MM
M_?$R8G9MJO++,LH!-]7(FGC9:T;MK.?$I4LGJTN7[NJG[2!9GE<?.1[*?"Y
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
MJ1! OE0PH$ZJK VNKB-M>#]S0@E%,(7YW0AX;SJX5KFQ)K*,9'NHT?YQ!J<
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
M_>W'O)<,9C_]F*?P-_XYT ^^0< 6L$<T^^3)Q C1DT;G^TKF8K*!UX@+(G&
MRI=LBQ\X1X$YS3/O.W,DOR>@@/&RG_A8\L&*Y?22/$_&\LJM[YW=WNS2PU:C
M^_W&R_Y99?TTG+ ?.;=L^'_:S=6;BGLJIX8[>M>7>(#W+UY]CS>@GS\%S\.S
M.HT6<=??:,5/O66/]:;526-M)(SR?/+#Z]>WM[>-3/4;U\G-Z_.T/PIO5/9:
M#:Z#]/4@R(/78.: 5=M\C8;2:>OHJ-MJM@Z;K6ZW]1J$7ZN1?\V-B#F &QV@
MPPVV^@^*.1)#";@%TK)RCME/<BZXJM.4.AZB^=PT5:'G#LKFI4;9=&^$8^NY
M@9<1[6QB51=+SMUZ+S37P,\8, ?+@V [X-_DVB5:\]CZU#GODJHY3P[.6^U?
MW-)4^:W.2<)_R@M ^,W@IS*AK<\BZTK.K>/]=5^LTV@_[EMY<JU>"[]883&:
MJ>[%2:U6^[A]U&VV\=_MSNNDW__?@1K>EYD(AXZ)K?V C%2X[5I,=#ZA=O>O
MWOE"+J+JBI RD1@@F3DE=*:DNWM>\6*:BVKN>1F:LU-KSC7X_;33:A\"VW</
MCT]!<[;;)_ '*-!.NS'*QRN9OHJ)W\RBX)9'&DZXJ^R"7(,+R\Y.NE\/I6L1
M&[6:FVG#3J.]D)/_:=H9YULR_ND,!0W303FM#VSM#H5LW5M%UG;P/;FY^\UQ
ML_KZO]V3SFGG^(D8\;< 9(5WJFN'WKW_\/9G[]>WEV__?/_YUYK\GY/\N[4;
MN+XR:W9;A]WCUA&Z@=W6.LQ#2@%[-G$SAE1FB?FN5&6*&SK0?<)>U3SI?]E,
M/\')/9)^DL1.L^OM#6EVY)1<NN9!^[C9;N_7"NN9.;9=<^S:YF>[<W)T>-A]
M/>@VCTY/T/SLKF5^/BKC/I9A*8S;:M<L^LPL6GN(ZRO5TV:KVVEU6*FN99*"
ME9ERM8F,#_J X[9^EFDSGVG:##?7_V,*7]"4@N:)UU/Y+0);+#99@\S[)0T0
MA=[W/JB+* C3RUE G]-=%8\D*L_*R:9]K'DG) L'GSSQ/H5Q'/3A(?@[;\_^
M#F3#6!'4#P52Z6M8>G%:CWOCT@7_"J)(S>BZ?5S=&Q4KD%(AEF5L:D4<+^P/
M6 $[X/3PLPPJ3H&''9=0EM2+M,D#:)[6TNF9I=.WY_$^D'0ZV4PZ%222K]NZ
M9G8H $F3=^%7+L]\%U)E%DNNWP)0YTTMN6:"ILL"[&I*;)=ZOR4#A,W"KD8:
M'.%$MKE:Z]N39B>U-/O&I-EA+<U62[-NY_BX>]HZ:G::AZ='KT&8'736$6:?
M<1 D3S+AD8RZAMS4F[YJ^2>M(_^H>8ILN=BV8K%V/DG#R&L?D9\"_ZLYKT<L
MGQNQ8>21KCE%]X8#^>T6I>P>24SM;RIQ.@N=N0N!52])G).#_WJMLWPDY7DO
MELJ1_X#_YV*CUU0,5:B\*E3@+:]$75(/6/?4S17I'M<]=77);EVR^])[ZK:]
M//29[:>CVGZZD_W4W<Q^>K/(?CKTV\<MO]MJ?9OV4_<I[*?:#WM\.7)<RY$[
MR9'#=>3(;\F TU""++,J\%V4$^4 TF(I4\GNP*#KA9SV"S&G\WB0PKZ_:7CG
MUTJA7&!\]#"?ZM=PPE+[SQ27*D><</HK[/7,X+;H+N [9ATV%(>'M3C<#7%X
M4HO#.XG#H[N(PY61=FZX/L^P&U\/&O^  XHS*6R+J>V\%IV/+#K72XFL=4Z%
M#,F&4O:HEK*[(65/:RF[MI0]:;9:AX=-D++_"_\X;C;7D;17/"=J4_L3>:1-
M/#*7O7P:"?IGP_N<#$!B(-['MLO/^UG_&@E\@A/^DFD6S?@YH897?%H+M]V\
M9_F;C"XKUK_Q*[,^:)W4<OFYJ\J;M6"^LV!>J[1\@6!^2$NX%N*/*<0?SV>Y
M@\!_(79Y^[X]#;5NV +=4+<<K:T;$$3AJ-DY(=UP>GC:7:M FA).R)<5?*P-
M.&"D-EEP8(^)< _&"0BM)>71$7Y/LA"!BE 8AP.0>0A0=X[X<5@U)U=?$31E
MYJ-T;[ DNX#'IV'?NTJB*6,1?OAPX5M9[?V&4Z O9'X\?.?MQ<FM-T@8/5(P
M&$':7GVX]-[HO]E4+:>=[M(UM=CU=S>-Q4B[6=?KO+AZG9.Z7J>NUZGK=>IZ
MG9VNUVG5_9]W-Y_6ZN"X5#=)=$-=GAP'^PV\2$4>*V)=)>F,:WD6F%)/:T"A
M-SL,;I+4NJ9/8D<M;F)]0#NJ=L>>0)[4S:IWER>GZ\B33\$L&6*\),_US.MB
MS DXZ0$X%T7$DKC<FGQ]EWZ&FJ]?(E_7;9[K\W6KV3X\;'60KSO-3F>],$LE
M-!(A0HS ;F>#(4<,)&"52[0W,S>X.]!-FJ2W!3>SK2MTUVA6QX#L&.SQ?J!Q
M*#ZG09P!5WO_&8PG9Y*Q$S[V)=J2>2DO);A&9GXPS)D[8H2V:P"T9Q<4=0?E
M^H("\RLGK5,2%*>=YLE::#*%U$\Y%.L4Z#-'@ PH9=L>W3AX%,?DJ2*RQ[QK
MM1QY5CG2:C9:_[<6)&LG_8^;S6[GJ(U R$#MB*S604#D5C=81Z(L9F6\F9@#
MP*"(5G6CO$]1L,H#>&@ 8P9];'&AY/$.,&>[ZL';PYSM9V'.]N.^ZZ.A%C=/
M3X^!.1'OOWEWO.*WXTF4S(A!K-9?NY*&$J,JC+R?&]Z?8?0EC'WO'VG# 5;E
MPH:6( EOB/8/)+$0*V6)XF7NEB<?[@R&\99S=Z?F[O6YNP/L?7AR\GK0/3V%
M?Q*3M];J.S'C!WR'"\VDT-8)PR_ZI$^W4""TCA9*A/7*KPH 2L4Y@:U.T3!@
MT=&I1<=SBXYN+3K6$!W\SU:W27^\OB7V0]L]'M#PD#RA_POB#6IW*Z6)L ?E
M$_%_7X8H*4Q)F1-XFPN:TT<4--VBH#GF#VM!\]R"YK 6-'?T0-9J"'@D*?$9
M'C/S?FEX5V,,#SZ<K?$DSD==B/D<A9BG=2%F78A9%V+6A9@[7(@)*NRH-FCN
M&719JQSS^8,NCV8#+4:KKN,MN^H&'==28_-X2X:,5Q5N&6Q/O&5-*?+ H9;V
MXBQ/'6K951ES4LN832HQ6JW6\?%KM$@.VAO-]8.;TS2PX#9(05X8N8"\ P[L
M@2*AH93W)L$?C(F7,P^<5,7,=?\ZCC4DP.)0RQTD0*&9_MA,JXY57>OQ8MC_
MM&;_C4J_3TX/6U31V3H\.EX+%DL+@ 1X@_@5>!C^.<15(P?N":L!?\3P05CZ
M>JR";)JJ_84"Y&DE1.OPD:;F@.AA 6'LF'935WU[/V;PJ$)(; !V&K_<#[P#
M48A!0$N1>,5/M71YYC+/9BU>-BD8;[=;QX<H7KJMT]/3M4(>[\(TRZV_HBLR
M[R(+RIX.SZUJWR%G^[#%(79>*:R%A<25FN3B[;1WIJ9[JYF]]3SCP9^5U?]/
MG.0J!L6S,JI@JI]3!1( H^9>'UACFAN,+R!Y+QL%J?)4D,(]K[,55=CX;,\I
MC@!>B3,UH'[S#']@/X)_94D4<B/$.V-FF%5EL)@88;X,=]?<]*S<U/D6N0G5
MWDGGM+/6M+D+? T7(Z^Z/F 4JB%H)M6?DE[[.(1+@-$FTS2;!JPMKZ3MLM,T
MX:^K(.T%L<H./G[%:9/G?0*Q:X/";GCOWG]X^[/WZ]O+MW^^__QKS2;/S";/
M@G#R(MADK:%"F[")50PUF^P6F[2_86VRULR<A],FK1/OC\95XZ)A&*;5.6Q2
MGF:03-#^JF*JT^;16DSUQ^7O[Z]^K1GKY3#6MZM_UNJ">3C]4S/6-\18K>8W
MH[ ^ VD.DRA*;C$H, :/'"Z/,L9^ND<(K8AK74S&MSLT#A(>AGR#&.?__>;R
M@[?W/L8HNJ?^.U=Q%F+@T(!#\*-PB1^"^'H:7*O]'[R]<']1E.%-$%'ZXFJD
M%"+(Y'-+8)R)8@Z@[<,]%]_4"5@ ZW[4"97,O'0.(DIY8SB&4;;@S>FQYE'K
M/NL*(S,,U9/IDV B>_O7%%&3[[J"FS47<!%D(^\=4,E=7Q;_M5=XVET"116&
M?5U,_U**Z3O-NIB^+J:OB^GK8OJ=+J9_%K#"YS -+Y(;1 8$6\M[CQL12#U[
MD >@G(&$]JP1%^!P'++>R)1#;6]S.F#AV>PL=<%MKK3==YUCCW7>MO!J!7ZP
MZFE>0&O=T]I(]SCJY/NR:M.<VIGD'I(__4.T5?%M[V25%"3!<S$^:=%'Y?S6
MDW/#)I4D=IWF-9]PI;\%,? LI7N1!Y%O/;#9,>$+9G:0(RKX! LNX$-3QW5W
MIGQP,D75J#]8IB8?7KC7!GW1H&]MD4$_+[OON(]EJ]T8?"$IN(->E/2_S!M9
MNV*JOP0+]8G8_<<>'EDX^/MW67B=?>?E88X/Y3_D)+^C(LZK][_\?O[YC\NW
M5S^^[OVT;)4/;)L\E<[XY 2O,;B3JK^F86KC/Q3!YA%=B+3Z]FM_%,1@&$H8
MNW7:P88DNO ZS'(<B^B-P"@<8/%</YAF-- OS.![BAG"8WK*PQE].,TO)BS7
MGAH%T1 +C?!&5%4K/\BQ*F@:PT5T/U"JHR2%]QTTGO H[F4]W45)EEFJ%*)8
M;CG)CX^:RYT.^5F7?@;\\/'3Y_<7YQ^\B_,W']YZ%Q\O/WV\%#<6Z7YE%/\N
MC]V[-#2S_TB/6#L+\70W!S<**,+MZ6MW5CQ*B.^ 74-R2CR*EWKI=6^OZ7OX
MGWVX]^OL=15FTB.]_],]Z6(4A-B7H"42]RKAA-(0IX,F:>8_TI,_I2H+!WJZ
MZ(),_(NBKZTFWF(#ZB.]^I,\Y$K%.$KX7T ?7A41F2S'(SV_FC37#K7<S]0@
M)V@]%^O#^=7G ^M-5#I-S^L,M9?:R? /V=!1/HY^^O]02P$"% ,4    " #Q
M06Y64X>*_?<'  " ,   #0              @ $     97A?-#@S.3,S+FAT
M;5!+ 0(4 Q0    ( /%!;E8SY.-,O@<  '4O   -              "  2((
M  !E>%\T.#,Y,S0N:'1M4$L! A0#%     @ \4%N5L*$>ZM#!   -0P   T
M             ( !"Q   &5X7S0X,SDS-2YH=&U02P$"% ,4    " #Q06Y6
M#C&2L#<$  !A#   #0              @ %Y%   97A?-#@S.3,V+FAT;5!+
M 0(4 Q0    ( /%!;E:$6>S0U4T   DB @ -              "  =L8  !E
M>%\T.#,Y,S<N:'1M4$L! A0#%     @ \4%N5MLD&Y02#0  2),  !
M         ( !VV8  &]C8RTR,#(S,#$S,2YX<V102P$"% ,4    " #Q06Y6
M^'^\=@8*  !;B0  %               @ $;=   ;V-C+3(P,C,P,3,Q7V-A
M;"YX;6Q02P$"% ,4    " #Q06Y6>Q/MX-0L  !.X@, %
M@ %3?@  ;V-C+3(P,C,P,3,Q7V1E9BYX;6Q02P$"% ,4    " #Q06Y6Y7WW
M8OM   "T@@, %               @ %9JP  ;V-C+3(P,C,P,3,Q7VQA8BYX
M;6Q02P$"% ,4    " #Q06Y6GS( T78O  #Q. 0 %               @ &&
M[   ;V-C+3(P,C,P,3,Q7W!R92YX;6Q02P$"% ,4    " #Q06Y6XXH?S\ZV
M  "_\@< $P              @ $N' $ ;V-C,C R,S Q,S%?,3!Q+FAT;5!+
4!08     "P + *X"   MTP$    !

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